<p>Not in the way you seem to describe it. Rather than splitting up a block, multiple variations of a block template are given out to individual miners to allow them to cooperate in searching for a block without repeating the same work.</p>
<p>The hashing of the block (within a single attempt) is not split up. It would make no sense to split up a single hash. E.g. AntMiner S9s are advertised as doing 14 trillion hashes per second. Splitting up that work and reassembling it would be much slower than just doing the whole hashes on one machine.</p>

CC BY-SA 4.0
2024-01-30T20:37:00.907Z
Thanks. Is that because the expectation is an AntMiner S9 has a good probability of finding the right hash within 10 minutes? I can make that an alternate question but I was under the assumption a block is found every 10 minutes and not so much that a single node has a high probability of finding one in that time? I can dedicate that to it's own question if it's unclear.
Usman Mutawakil
CC BY-SA 4.0
2024-01-30T20:56:22.950Z
@UsmanMutawakil No, there is simply no point in splitting things up. There is no scarcity in block templates to analyze; you can make up as many as you want, which is far easier than building coordination mechanisms between miners. And also no, an AntMiner S9 would search several thousand full block templates (all 2^32 nonces for a given template) per second, almost all of which will not yield any results.
Pieter Wuille
CC BY-SA 4.0
2024-01-31T04:15:30.667Z
@PieterWuille I'm not sure I understand when you say no. If theres no point in splitting up the calculation of the nonce then wouldn't that imply theres a good probability a single node can find it for a any given block in at least 10 minutes. If thats not true then what would be the drawback  to decomposing the calculation into something parallelizable if possible...When you say "almost all of which will not yield any results" isn't that after X amount of time that could have been reduced with divide and conquer?
Usman Mutawakil
CC BY-SA 4.0
2024-01-31T04:17:35.993Z
All that matters how many hashes a miner tries per second. Each independently has the same chance to be good or bad. It does not matter if they come from the same template or different templates. And giving each miner different templates is vastly easier. It takes **less than a millisecond** for a modern miner to fully search through one template; splitting that up even further is utterly pointless.
Pieter Wuille
CC BY-SA 4.0
2024-01-31T04:21:54.337Z
@PieterWuille I see. That last part was the root of my misunderstanding. Thanks for the clarification.
Usman Mutawakil
CC BY-SA 4.0
2024-01-31T04:34:59.283Z
Actually the speed of searching through a template is irrelevant. Even if it took an hour to search through a template, it would still be easier to just give every miner separate templates. There is no progress: how many hashes within one template you have tried already does not change your chances for future hashes in the same template, so there is no point is specifically trying to search them in their entirely - as long as all miners are always trying hashes that nobody has tried before, you're chances will be as good.
Pieter Wuille
CC BY-SA 4.0
2024-01-30T19:03:47.063Z
2024-01-31T13:49:26.030Z
2024-01-31T13:49:26.030Z
Murch
<p>Are there any mining rig configurations in which a block is divided some how so that multiple nodes can process a piece of the same block in some sort of divide and conquer approach?</p>
<p>For example if you have a block to hash could it be broken up into 10 pieces to give to 10 miners, processed, then reassembled somehow to make use of the 10 individual rigs or is the mining process not something that can be decomposed this way?</p>

<mining-pools><mining-theory><mining-hardware><mining-reward><miner-configuration>
Do any mining rig configurations divide hashing into pieces to be distributed across nodes?
Usman Mutawakil
# Do any mining rig configurations divide hashing into pieces to be distributed across nodes?

(Asked by: username_0 on 2024-01-30)

Are there any mining rig configurations in which a block is divided some how so that multiple nodes can process a piece of the same block in some sort of divide and conquer approach?

For example if you have a block to hash could it be broken up into 10 pieces to give to 10 miners, processed, then reassembled somehow to make use of the 10 individual rigs or is the mining process not something that can be decomposed this way?

**Tags:** mining-pools, mining-theory, mining-hardware, mining-reward, miner-configuration


---

## 1 answers

### Answer by username_1 on 2024-01-30. Score: 1 | Accepted answer

Not in the way you seem to describe it. Rather than splitting up a block, multiple variations of a block template are given out to individual miners to allow them to cooperate in searching for a block without repeating the same work.

The hashing of the block (within a single attempt) is not split up. It would make no sense to split up a single hash. E.g. AntMiner S9s are advertised as doing 14 trillion hashes per second. Splitting up that work and reassembling it would be much slower than just doing the whole hashes on one machine.

> **Comments:**
> **username_0**: Thanks. Is that because the expectation is an AntMiner S9 has a good probability of finding the right hash within 10 minutes? I can make that an alternate question but I was under the assumption a block is found every 10 minutes and not so much that a single node has a high probability of finding one in that time? I can dedicate that to it's own question if it's unclear.  
> **username_2**: @username_0 No, there is simply no point in splitting things up. There is no scarcity in block templates to analyze; you can make up as many as you want, which is far easier than building coordination mechanisms between miners. And also no, an AntMiner S9 would search several thousand full block templates (all 2^32 nonces for a given template) per second, almost all of which will not yield any results.  
> **username_0**: @username_2 I'm not sure I understand when you say no. If theres no point in splitting up the calculation of the nonce then wouldn't that imply theres a good probability a single node can find it for a any given block in at least 10 minutes. If thats not true then what would be the drawback  to decomposing the calculation into something parallelizable if possible...When you say "almost all of which will not yield any results" isn't that after X amount of time that could have been reduced with divide and conquer?  
> **username_2**: All that matters how many hashes a miner tries per second. Each independently has the same chance to be good or bad. It does not matter if they come from the same template or different templates. And giving each miner different templates is vastly easier. It takes **less than a millisecond** for a modern miner to fully search through one template; splitting that up even further is utterly pointless.  
> **username_0**: @username_2 I see. That last part was the root of my misunderstanding. Thanks for the clarification.  
> **username_2**: Actually the speed of searching through a template is irrelevant. Even if it took an hour to search through a template, it would still be easier to just give every miner separate templates. There is no progress: how many hashes within one template you have tried already does not change your chances for future hashes in the same template, so there is no point is specifically trying to search them in their entirely - as long as all miners are always trying hashes that nobody has tried before, you're chances will be as good.  

---

