cpuminer-opt-3.18.0
Complete rewrite of Scrypt code, optimized for large N factor (scryptn2):
- AVX512 & SHA support for SHA256, AVX512 has priority,
- up to 50% increase in hashrate,
- memory requirements reduced 30-60% depending on CPU architecture,
- memory usage displayed at startup,
- scrypt, default N=1024 (LTC), will likely perform slower.
Improved stale share detection and handling for Scrypt with large N factor:
- abort and discard partially computed hash when new work is detected,
- quicker response to new job, less time wasted mining stale job.
Improved stale share handling for all algorithms:
- report possible stale share when new work received with a previously submitted share still pending,
- when new work is detected report the submission of an already completed, otherwise valid, but likely stale, share,
- fixed incorrect block height in stale share log.
Small performance improvements to sha, bmw, cube & hamsi for AVX512 & AVX2.
When stratum disconnects miner threads go to idle until reconnected.
Colour changes to some logs.
Some low level function name changes for clarity and consistency.
The reference hashrate in the summary log and the benchmark total hashrate are now the mean hashrate for the session.
Update errata:
The changes to scrypt have reduced scryptn2 performance on AVX CPUs significantly, SSE2 also likely. This occurs with the
same number of threads. Memory usage reductions in v3.18.1 may allow more cores to run mitigating the slow down. Owners
with these CPUs who haven't previously been able to run all cores may want to compare performance and may want to continue
using v3.17.1 until the problem is resolved. CPUs with AVX512 or AVX2 are not affected. The problem is under investigation.
Ryzen users will find better performance on scryptn2 using the AVX2 build instead of the native zen or zen3 build with SHA.
The default will be changed in the next release to use AVX2 for scryptn2 when SHA is also available. AVX512 is already the
default when it is available.