Revision 5: capable of using the Chinese Remainder Theorem to speed up mining with large shift.
windows: https://github.com/gapcoin/GapMiner/releases/download/crt-rev5/gapminer-windows-rev5.zip
md5: dbae859b1e8825f4f9b3f693004833c4
linux: https://github.com/gapcoin/GapMiner/releases/download/crt-rev5/gapminer-linux-rev5.zip
md5: 909f7fcb141a23d60b04ba8c0df1f391
source code: https://github.com/gapcoin/GapMiner/archive/crt-rev5.zip
The usage should be pretty self explaining from the start-gapminer file.
There are different CRT files containing values optimized for a specific shift.
There are 3 new verbose outputs:
- gaps/s: The amount of gaps scanned per second
- gaplist: The number of sieved gaps ready for scanning
- block: The percent of the calculation amount of an average block
The primes per second and the block percent values are estimated using the theoretical speed improve from the CRT, so they don't have to be correct.
Mining with the CRT is optimized for solo mining.
You can mine at the pool, but you will probably mine less shares, and the pps and block values are probably incorrect, but your chance of finding a block is almost the same as when mining solo.
Mining with the CRT is splitted in sieve and primality testing using separate threads for each:
--threads 4 --fermat-threads 1
The scan threads always pick the most promising gap from the gaplist, therefore the gaplist value should always be at least over 100, but a too high gaplist value can slow down mining, (for example over 9000). You can alter --sieve-primes, --threads or --fermat-threads to achieve this.
(--sieve-size is not used for CRT mining)
FYI: The gaplist is implemented as an heap
The is also an logging version, which produces additional output in a gapminer.log file.
If something goes wrong, you can switch versions, and look whats wrong, or at least give feedback.
Thanks j0nn9, trying some large shifts. Seems like almost the same performance on really enormous shifts vs fairly large ones, pretty neat.