Author

Topic: Cgminer clarification (Read 715 times)

sr. member
Activity: 359
Merit: 250
August 29, 2013, 01:15:41 PM
#6
Blocks also have an "extraNonce" transaction which changes the merkle root and therefore the block's header.
extraNonce is required since it only takes seconds of fractions of a second for modern mining hardware to run through all possible header nonce values for a given block header.  Changing extraNonce generates a new block header and allows you to keep mining.

It's possible that pool servers simply generate different blocks by giving every worker a different starting extraNonce value or even by putting different transactions in the work it sends out to its miners.

It's usually in the pool's best interest to ensure its miners aren't doing duplicate work, both in the obvious case of PPS pools where the pool is paying per share, and simply because miners will tend to move away from pools that seem to permanently have bad luck.
newbie
Activity: 26
Merit: 0
August 29, 2013, 01:00:00 PM
#5
The pool doesn't distribute work by worker. The pool provides work when cgminer requests it. The pool is responding to that request.

Workers are just to help you keep track of which miner is mining what, and to link your shares to your account. You can have 1 miner per worker, or 100 per worker. If you don't need individual stats for those 100, 1 worker is ok. Some pools may recommend creating 1 worker per miner, but it should not be a requirement.

Makes sense to me. Thanks Smiley
sr. member
Activity: 434
Merit: 251
CGWatcher & CGRemote
August 29, 2013, 12:29:25 PM
#4
The pool doesn't distribute work by worker. The pool provides work when cgminer requests it. The pool is responding to that request.

Workers are just to help you keep track of which miner is mining what, and to link your shares to your account. You can have 1 miner per worker, or 100 per worker. If you don't need individual stats for those 100, 1 worker is ok. Some pools may recommend creating 1 worker per miner, but it should not be a requirement.
newbie
Activity: 26
Merit: 0
August 29, 2013, 10:31:51 AM
#3
The network doesn't want two computers working on the same problem either.  cgminer already manages that for you.

Welp may I ask how does cgminer avoid it?
mjc
hero member
Activity: 588
Merit: 500
Available on Kindle
August 29, 2013, 08:36:56 AM
#2
The network doesn't want two computers working on the same problem either.  cgminer already manages that for you.
newbie
Activity: 26
Merit: 0
August 29, 2013, 04:32:23 AM
#1
The process of bitcoin mining basically consists in repeatedly increasing the nonce of the block until a valid sha256d hash is found that breaks the difficulty level. That's what I got so far.

Now, suppose one has 2 different computers with cgminer running on the same pool and connected to the same exact worker.

I don't want a computer to check the same hashes as the other to not waste work. How can I be sure that the two machines are not generating the same hashes, given the above pool connection? Can I set cgminer in a way that avoids such collisions?

Same condition is explained here:
https://en.bitcoin.it/wiki/Block_hashing_algorithm
But I guess it applies to solo mining only.

Does this logic apply for pools that let you mine unregistered? So that you can set the same credentials and same address in both machines but avoiding wastes of work. Maybe by selecting a different password idk.
Jump to: