All miners come across some invalid shares, but what is it? Why does it happen?
Last update: 25.January 2023
An invalid share can happen when a bit is flipped compared to how it should be in ideal conditions. This can happen when the clock/voltage ratio on the compute core is not sufficient. It can happen either in the core or memory, but the core is less likely. The main reason is too high a memory clock.
But why is core less likely?Nvidia cannot modify the core voltage curve, so invalid shares are less likely because of the core clock. With AMD, when data bits flip, it's also crucial for memory address calculation, leading to complete card crashes. So more often, those are read errors on the memory.
What about the DAG?The DAG is built very similar to how a hash/share is created, but with a difference. Each entry has 256 instead of 64 predecessors, and the width in bytes per element is smaller – but the mechanism is the same. If the memory is stressed (too high a memory clock typically) so much that, for example, 1/2^20 memory access gets corrupted, 1/4096 of the DAG is defective. This will amplify very quickly to defect/invalid shares – about 1 out of 64.
Verifying and repairing DAGToday's standard among the better mining software is verification – and partial repairing of the DAG. Following from the previous example where 1/4096 of the DAG is defective – after it's verified and repaired, the error ratio would go from about 1 out of 64 – to only one defect/invalid out of 16384 hashes/shares – way more acceptable!