Author Topic: [ANN] cpuminer-opt v3.12.4.5, open source optimized multi-algo CPU miner  (Read 1279 times)

0 Members and 1 Guest are viewing this topic.


  • Guest
This is the home of cpuminer-opt, the optimized CPU miner.


Supporting over 90 agorithms with many optimized for CPUs with the latest technologies:

AMD Ryzen: AVX2, SHA
Intel Skylake X: AVX512
Intel Icelake: AVX512, SHA, and VAES (source code only at this time)

Older CPUs with SSE2 are also supported.

Unique features

Block and share time estimates.

True hashrate reporting with comparison with actual share submission rate.


Windows binaries can be downloaded from -!8HQAkQoC!Qw7WgAe0V2uKjXdy3H2rrQ

New in v3.12.4.5

Issue #246: better stale share detection for getwork, and enhanced logging
of stale shares for stratum & getwork.

Issue #251: fixed incorrect share difficulty and share ratio in share
result log.

Changed submit log to include share diff and block height.

Small cosmetic changes to logs.

New in v3.12.4.4

Issue #246: Fixed net hashrate in getwork block log,
removed duplicate getwork block log,
other small tweaks to stats logs for getwork.

Issue #248: Fixed chronic stale shares with scrypt:1048576 (scryptn2).

Errata: RELEASE_NOTES incorrectly reports the version as v3.12.5.

New in v3.12.4.3

Fixed segfault in new block log for getwork.

Disabled silent discarding of stale work after the submit is logged.

New in v3.12.4.2

Issue #245: fixed getwork stale shares, solo mining with getwork now works.

Issue #246: implemented block and summary logs for getwork.

New in v3.12.4.1

Issue #245: fix scantime when mining solo with getwork.

Added debug logs for creation of stratum and longpoll threads, use -D to

New in v3.12.4

Issue #244: Change longpoll to ignore job id.

Lyra2rev2 AVX2 +3%, AVX512 +6%.

New in v3.12.3.1

Issue #241: Fixed regression that broke coinbase address in v3.11.2.

New in v3.12.3

Issue #238: Fixed skunk AVX2.

Issue #239: Faster AVX2 & AVX512 for skein +44%, skein2 +30%, plus marginal
increases for skunk, x16r, x16rv2, x16rt, x16rt-veil, x16s, x21s.

Faster anime VAES +57%, AVX512 +21%, AVX2 +3%.

Redesigned code reponsible for issue #236.

New in v3.12.3

Issue #238: Fixed skunk AVX2.

Issue #239: Faster AVX2 & AVX512 for skein +44%, skein2 +30%, plus marginal
increases for skunk, x16r, x16rv2, x16rt, x16rt-veil, x16s, x21s.

Faster anime VAES +57%, AVX512 +21%, AVX2 +3%.

Redesigned code reponsible for issue #236.

New in v3.12.2

Fixed xevan, skein, skein2 AVX2, #238.

Reversed polarity of AVX2 vector bit test utilities, and all users, to be
logically and semantically correct. Follow up to issue #236.

New in v3.12.1

Fixed anime AVX2 low difficulty shares, git issue #236.

Periodic summary now reports lost hash rate due to rejected and stale shares,
displayed only when non-zero.

New in v3.12.0.1

Fixed hodl rejects, git issue #237.

Fixed debug code added in v3.12.0 to work with AVX2 to be enabled only
after low difficulty share have been seen to avoid unnecessarily excessive
log outout.

Added more digits of precision to diff in log output to help diagnose
low difficulty shares.

New in v3.12.0

Faster phi2 AVX2 +62%, AVX512 +150% on Intel CPUs. AMD Ryzen AVX2 is
YMMV due to its inferiour AVX2 implementation.

Fixed Hodl stats, rejects are still an issue since v3.9.5, git issue #237.

API can now be enabled with "-b port" or "--api-bind port".
It will use the default address

Editorial: Short form options should only be used on the command line to save
typing. Configuration files and scripts should always use the long form
"--api-bind addr:port" without relying on any defaults. This is a general
recommendation that applies to all options for any application.

Removed obsolete cryptonight, all variants, and supporting code for more
size reduction and faster compiling.

Tweaked the timing of the CPU temperature and frequency log (Linux only).

Added some debug code to collect more info about low difficulty rejects,
git issue #236.


1. A x86_64 architecture CPU with a minimum of SSE2 support. This includes Intel Core2 and newer and AMD equivalents.
In order to take advantage of AES_NI optimizations a CPU with AES_NI is required. This includes Intel Westmere and newer
and AMD equivalents. Further optimizations are available on some algos for CPUs with AVX and AVX2, Sandybridge and
Haswell respectively.

32 bit CPUs and ARM CPUs are not supported.

2. 64 bit Linux 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.

64 bit Windows OS is supported using the pre-compiled binaries package or may be compiled with mingw_w64 and msys.

Apple and Android operating systems are not supported. FreeBSD YMMV.

Older CPUs, other architectures and operating systems may be supported by TPruvot's cpuminer-multi.

Security warning

Miner programs are often flagged as malware by antivirus programs. This is usually a false positive, they are
flagged simply because they are cryptocurrency miners. However, some malware has been spread using the
cover that miners are known to be subject to false positives. Always be on alert. The source code of cpuminer-opt
is open for anyone to inspect. If you don't trust the software don't download it.

Some cryptographic code has been taken from trusted sources but has been modified for speed at the expense of
accepted security practices. This code should not be imported into applications where secure cryptography is


Old algorithms that are rarely used anymore will not get the latest optimizations.

Cryptonight and variants are no longer supported.

Neoscrypt crashes on Windows, use legacy version.

Hodl requires a CPU with AES, use legacy version if without.

Benchmark testing does not work on several algos.

Supported algorithms
allium Garlicoin
anime Animecoin
argon2 Argon2 coin (AR2)
argon2d250 argon2d-crds, Credits (CRDS)
argon2d500 argon2d-dyn, Dynamic (DYN)
argon2d4096 argon2d-uis, Unitus, (UIS)
axiom Shabal-256 MemoHash
blake Blake-256 (SFR)
blake2b Blake2b 256
blake2s Blake-2 S
blakecoin blake256r8
bmw BMW 256
bmw512 BMW 512
c11 Chaincoin
deep Deepcoin (DCN)
dmd-gr Diamond-Groestl
groestl Groestl coin
hex x16r-hex
hmq1725 Espers
hodl Hodlcoin
jha Jackpotcoin
keccak Maxcoin
keccakc Creative coin
lbry LBC, LBRY Credits
luffa Luffa
lyra2h Hppcoin
lyra2re lyra2
lyra2rev2 lyra2v2
lyra2rev3 lyrav2v3, Vertcoin
lyra2z330 Lyra2 330 rows, Zoin (ZOI)
m7m Magi (XMG)
myr-gr Myriad-Groestl
neoscrypt NeoScrypt(128, 2, 1)
nist5 Nist5
pentablake Pentablake
phi1612 phi
phi2 Luxcoin (LUX)
phi2-lux identical to phi2
pluck Pluck:128 (Supcoin)
polytimos Ninja
power2b MicroBitcoin (MBC)
quark Quark
qubit Qubit
scrypt scrypt(1024, 1, 1) (default)
scrypt:N scrypt(N, 1, 1)
sha256d Double SHA-256
sha256q Quad SHA-256, Pyrite (PYE)
sha256t Triple SHA-256, Onecoin (OC)
sha3d Double keccak256 (BSHA3)
shavite3 Shavite3
skein Skein+Sha (Skeincoin)
skein2 Double Skein (Woodcoin)
skunk Signatum (SIGT)
sonoa Sono
timetravel Machinecoin (MAC)
timetravel10 Bitcore
tribus Denarius (DNR)
vanilla blake256r8vnl (VCash)
veltor (VLT)
x11 Dash
x11evo Revolvercoin
x11gost sib (SibCoin)
x12 Galaxie Cash (GCH)
x13 X13
x13bcd bcd
x13sm3 hsr (Hshare)
x14 X14
x15 X15
x16rv2 Ravencoin (RVN)
x16rt Gincoin (GIN)
x16rt-veil Veil (VEIL)
x16s Pigeoncoin (PGN)
xevan Bitsend (BSD)
yescrypt Globalboost-Y (BSTY)
yescryptr8 BitZeny (ZNY)
yescryptr8g Koto (KOTO)
yescryptr16 Eli
yescryptr32 WAVI
yespower Cryply
yespowerr16 Yenten (YTN)
yespower-b2b generic yespower + blake2b
zr5 Ziftr


cpuminer-opt has no fees of any kind but donations are accepted.