Author

Topic: Pool mining: shares vs. solutions (Read 774 times)

newbie
Activity: 31
Merit: 0
December 27, 2011, 01:09:09 AM
#5
Hmm there's a lot to consider.
donator
Activity: 1218
Merit: 1079
Gerald Davis
December 26, 2011, 10:35:13 PM
#4
Yes.

Almost all pools use a difficulty of 1 for share difficulty. 

So your miner submits all shares who's hash is smaller than the target for difficulty 1.  The pool verifies those shares and if they are small enough to be the block solution submits it to the network.

Currently difficulty is roughly 1.16 million so it is 1.16 million times easier to find a share than a block solution.  Technically your miner doesn't even need to know what the difficulty is.  It simply submits everything smaller than target for difficulty 1 (that by definition includes shares smaller than target for diff 1.16 mil).

OK.  And after the submission the miner keeps on hashing the block and is stopped only by receipt of some kind of block-solved message coming in (or, in theory, by running out of nonce possibilities)?

That parenthetical raises another question:  does the nonce always have to start at 0 and increment?  Or could it start anywhere and wrap around?

Edit:  replaced period with question mark in first paragraph.

yes that block solved message is called a "long poll".  The miner then clears its work queue and begins work on updated headers.

The miner will routinely run out of nonces.  Nonce range is 2^32.  A 1 GH miner will exaust the nonce range in ~4 seconds and thus need a continual supply of new work every 4 seconds to avoid going idle. 

Yes the miner could start at any nonce value.  Each nonce has equal chance of being a solution so there is no real reason to not start @ 0 and increment until max nonce.  Very Old miners stopped when they found a share in the nonce range but that is inefficient because each nonce range can have 0,1 or 2+ shares.  All current miners search entire nonce range and return any shares found.

member
Activity: 266
Merit: 36
December 26, 2011, 10:15:38 PM
#3
Yes.

Almost all pools use a difficulty of 1 for share difficulty.  

So your miner submits all shares who's hash is smaller than the target for difficulty 1.  The pool verifies those shares and if they are small enough to be the block solution submits it to the network.

Currently difficulty is roughly 1.16 million so it is 1.16 million times easier to find a share than a block solution.  Technically your miner doesn't even need to know what the difficulty is.  It simply submits everything smaller than target for difficulty 1 (that by definition includes shares smaller than target for diff 1.16 mil).

OK.  And after the submission the miner keeps on hashing the block and is stopped only by receipt of some kind of block-solved message coming in (or, in theory, by running out of nonce possibilities)?

That parenthetical raises another question:  does the nonce always have to start at 0 and increment?  Or could it start anywhere and wrap around?

Edit:  replaced period with question mark in first paragraph.
donator
Activity: 1218
Merit: 1079
Gerald Davis
December 26, 2011, 10:08:47 PM
#2
Yes.

Almost all pools use a difficulty of 1 for share difficulty.  

So your miner submits all shares who's hash is smaller than the target for difficulty 1.  The pool verifies those shares and if they are small enough to be the block solution submits it to the network.

Currently difficulty is roughly 1.16 million so it is 1.16 million times easier to find a share than a block solution.  Technically your miner doesn't even need to know what the difficulty is.  It simply submits everything smaller than target for difficulty 1 (that by definition includes shares smaller than target for diff 1.16 mil).
member
Activity: 266
Merit: 36
December 26, 2011, 10:06:06 PM
#1
Is this right?

When mining as part of a pool, the miner tries to solve a block, i.e., to find a nonce value that makes the hash value less than that required by the current difficulty.  However, for each hash value that is calculated, the miner checks to see if it's less than the value required by (not sure of the terminology) the "share difficulty", which is much less difficult, and if it is, submits it to the pool as a share.  Then the miner continues to work on the block in order to find a solution.
Jump to: