cpuminer-opt is a branch of cpuminer-multi from TPruvot with optimizations imported from other miners developed by Lucas Jones, djm34, Wolf0, pooler, Jeff Garzik, ig0tik3d, elmad, palmd and Optiminer, with additional optimizations by JD Dee. NoDevFee: Cpuminer-opt has no fees, but donations are accepted.
All code is considered open and free. If anyone has a complaint about any of them, post your case on the cpuminer-opt Bitcoin Talk forum or by email.
Updated Windows binaries compiled with GCC 9. Included DLLs also updated.
Icelake build (cpuminer-avx512-sha-vaes.exe) now included in Windows binaries package.
No source code changes.
Please note miners are often marked as malware by antivirus programs. This is not so, they are marked simply because they are cryptocurrency miners. The source code is open to all. If you do not trust the software, do not use it.
A x86_64 architecture CPU with a minimum of SSE2 support. This includes Intel Core2 and newer and AMD equivalents. Further optimizations are available on some algoritms for CPUs with AES, AVX, AVX2, SHA, AVX512 and VAES.
Older CPUs are supported by cpuminer-multi by TPruvot but at reduced performance.
ARM and Aarch64 CPUs are not supported.
64 bit Linux or Windows OS. Ubuntu and Fedora based distributions, including Mint and Centos, are known to work and have all dependencies in their repositories. Others may work but may require more effort. Older versions such as Centos 6 don’t work due to missing features. 64 bit Windows OS is supported with mingw_w64 and msys or pre-built binaries.
MacOS, OSx and Android are not supported.
Stratum pool supporting stratum+tcp:// or stratum+ssl:// protocols or RPC getwork using http:// or https://. GBT is YMMV.
Old algorithms that are no longer used frequently will not have the latest optimizations.
Cryptonight and variants are no longer supported, use another miner.
Neoscrypt crashes on Windows, use legacy version.
AMD CPUs older than Piledriver, including Athlon x2 and Phenom II x4, are not supported by cpuminer-opt due to an incompatible implementation of SSE2 on these CPUs. Some algos may crash the miner with an invalid instruction. Users are recommended to use an unoptimized miner such as cpuminer-multi.
cpuminer-opt does not work mining Decred algo at Nicehash and produces only “invalid extranonce2 size” rejects.
Benchmark testing does not work for x11evo.
Users are encouraged to post their bug reports using git issues or on the Bitcoin Talk forum or opening an issue in git:
All problem reports must be accompanied by a proper problem definition. This should include how the problem occurred, the command line and output from the miner showing the startup messages and any errors. A history is also useful, ie did it work before.
New in v3.19.8
#370 “stratum+ssl”, in addition to “stratum+tcps”, is now recognized as a valid url protocol specifier for requesting a secure stratum connection. The full url, including the protocol, is now displayed in the stratum connect log and the periodic summary log. Small optimizations to Cubehash, AVX2 & AVX512. Byte order and prehash optimizations for blake256 & blake512, AVX2 & AVX512.
New in v3.19.7
#369 Fixed time limited mining, –time-limit. Fixed a potential compile error when using optimization below -O3.
New in v3.19.6 #363 Fixed a stratum bug where the first job may be ignored delaying start of hashing. Fixed handling of nonce exhaust when hashing a fast algo with extranonce disabled. Small optimization to Shavite.
New in v3.19.5
Enhanced stratum-keepalive preemptively resets the stratum connection before the server to avoid lost shares. Added build-msys2.sh shell script for easier compiling on Windows, see Wiki for details. X16RT: eliminate unnecessary recalculations of the hash order. Fix a few compiler warnings. Fixed log colour error when a block is solved.
New in v3.19.4
#359: Fix verthash memory allocation for non-hugepages, broken in v3.19.3. New option stratum-keepalive prevents stratum timeouts when no shares are submitted for several minutes due to high difficulty. Fixed a bug displaying optimizations for some algos.
New in v3.19.3
Linux: Faster verthash (+25%), scryptn2 (+2%) when huge pages are available. Small speed up for Hamsi AVX2 & AVX512, Keccak AVX512.
New in v3.19.2
Fixed log displaying incorrect memory usage for scrypt, broken in v3.19.1. Reduce log noise when replies to submitted shares are lost due to stratum errors. Fugue prehash optimization for X16r family AVX2 & AVX512. Small speed improvement for Hamsi AVX2 & AVX512.
Win: With CPU groups enabled the number of CPUs displayed in the ASCII art affinity map is the number of CPUs in a CPU group, was number of CPUs up to 64.
New in v3.19.1
Changes to Windows binaries package: – builds for CPUs with AVX or lower have CPU groups disabled, – zen3 build renamed to avx2-sha-vaes to support Alderlake as well as Zen3, – zen build renamed to avx2-sha, supports Zen1 & Zen2, – avx512-sha build removed, Rocketlake CPUs can use avx512-sha-vaes, – see README.txt for compatibility details.
Fixed a few compiler warnings that are new in GCC 11. Other minor fixes.
New in v3.19.0
Windows binaries now built with support for CPU groups, requires Windows 7.
Changes to cpu-affinity: – PR#346: Fixed incorrect CPU affinity on Windows built for CPU groups, – added support for CPU affinity for up to 256 threads or CPUs, – streamlined code for more efficient initialization of miner threads, – precise affining of each miner thread to a specific CPU, – added an option to disable CPU affinity with “–cpu-affinity 0”
Faster sha256t with AVX512 & AVX2.
Added stratum error count to stats log, reported only when non-zero.
Do you like to read similar articles about cryptocurrencies and mining, do you want to support me as an author or ask questions? Be the first to know the news, subscribe to my telegram channel t.me/cryptomineg