C Assembly C++ NSIS PHP Other Other
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 8 commits ahead, 5 commits behind Encel-US:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
algo hive five ? Dec 21, 2015
api init Dec 11, 2015
asm init Dec 11, 2015
compat fallback cpuminer-config.h for vstudio Dec 19, 2015
crypto init Dec 11, 2015
lyra2 init Dec 11, 2015
m4 init Dec 11, 2015
res init Dec 11, 2015
scryptjane hive five ? Dec 21, 2015
sha3 Optimization #1: Removed unnecessary threads at ar2 Dec 22, 2015
.gitignore fix git Dec 19, 2015
.travis.yml init Dec 11, 2015
AUTHORS init Dec 11, 2015
Android.mk init Dec 11, 2015
COPYING init Dec 11, 2015
ChangeLog init Dec 11, 2015
Dockerfile init Dec 11, 2015
LICENSE init Dec 11, 2015
Makefile.am hive five ? Dec 21, 2015
NEWS hive five ? Dec 21, 2015
README.md hive five ? Dec 21, 2015
api.c init Dec 11, 2015
autogen.sh init Dec 11, 2015
build.sh linux: disable linker plugin, doesnt works... Dec 19, 2015
compat.h init Dec 11, 2015
configure.ac mingw build Dec 19, 2015
cpu-miner.c hive five ? Dec 21, 2015
cpuminer-conf.json hive five ? Dec 21, 2015
cpuminer.1 init Dec 11, 2015
cpuminer.nsi init Dec 11, 2015
cpuminer.sln init Dec 11, 2015
cpuminer.vcxproj hive five ? Dec 21, 2015
cpuminer.vcxproj.filters hive five ? Dec 21, 2015
elist.h init Dec 11, 2015
miner.h hive five ? Dec 21, 2015
mingw64.sh mingw build Dec 19, 2015
nomacro.pl init Dec 11, 2015
sysinfos.c init Dec 11, 2015
util.c hive five ? Dec 21, 2015



Build Status

This is a multi-threaded CPU miner, fork of pooler's cpuminer (see AUTHORS for list of contributors).

Table of contents


Currently supported

  • scrypt (Litecoin, Dogecoin, Feathercoin, ...)
  • scrypt:N
  • sha256d (Bitcoin, Freicoin, Peercoin/PPCoin, Terracoin, ...)
  • axiom (Axiom Shabal-256 based MemoHash)
  • blake (Saffron [SFR] Blake-256)
  • bmw (Midnight [MDT] BMW-256)
  • cryptonight (Bytecoin [BCN], Monero)
  • cryptonight-light (Aeon)
  • dmd-gr (Diamond-Groestl)
  • fresh (FreshCoin)
  • groestl (Groestlcoin)
  • lyra2RE (Lyrabar, Cryptocoin)
  • lyra2REv2 (VertCoin [VTC])
  • myr-gr (Myriad-Groestl)
  • neoscrypt (Feathercoin)
  • nist5 (MistCoin [MIC], TalkCoin [TAC], ...)
  • pentablake (Joincoin)
  • pluck (Supcoin [SUP])
  • quark (Quarkcoin)
  • qubit (MyriadCoin [MYR])
  • skein (Skeincoin, Myriadcoin, Xedoscoin, ...)
  • skein2 (Woodcoin)
  • s3 (OneCoin)
  • x11 (Darkcoin [DRK], Hirocoin, Limecoin, ...)
  • x13 (Sherlockcoin, [ACE], [B2B], [GRC], [XHC], ...)
  • x14 (X14, Webcoin [WEB])
  • x15 (RadianceCoin [RCE])
  • zr5 (Ziftrcoin [ZRC])
  • argon2 (Argon2 [AR2])

Implemented, but untested

  • ? blake2s
  • ? hefty1 (Heavycoin)
  • ? keccak (Maxcoin HelixCoin, CryptoMeth, Galleon, 365coin, Slothcoin, BitcointalkCoin)
  • ? luffa (Joincoin, Doomcoin)
  • ? shavite3 (INKcoin)

Planned support for

  • scrypt-jane (YaCoin, CopperBars, Pennies, Tickets, etc..)




Basic *nix build instructions:

  • just use ./build.sh OR
  • ./autogen.sh # only needed if building from git repo
  • ./nomacro.pl # only needed if building on Mac OS X or with Clang
  • ./configure CFLAGS="-march=native" --with-crypto --with-curl
    • Use -march=native if building for a single machine

  • make

Notes for AIX users:

  • To build a 64-bit binary, export OBJECT_MODE=64
  • GNU-style long options are not supported, but are accessible via configuration file

Basic Windows build with Visual Studio 2013

  • All the required .lib files are now included in tree (windows only)
  • AVX enabled by default for x64 platform (AVX2 and XOP could also be used)

Basic Windows build instructions, using MinGW64:

  • Install MinGW64 and the MSYS Developer Tool Kit (http://www.mingw.org/)
    • Make sure you have mstcpip.h in MinGW\include
  • install pthreads-w64
  • Install libcurl devel (http://curl.haxx.se/download.html)
    • Make sure you have libcurl.m4 in MinGW\share\aclocal
    • Make sure you have curl-config in MinGW\bin
  • Install openssl devel (https://www.openssl.org/related/binaries.html)
  • In the MSYS shell, run:
    • for 64bit, you can use ./mingw64.sh else : ./autogen.sh # only needed if building from git repo
    • LIBCURL="-lcurldll" ./configure CFLAGS="-march=native"
      • Use -march=native if building for a single machine

    • make

Architecture-specific notes:

  • ARM:
    • No runtime CPU detection. The miner can take advantage of some instructions specific to ARMv5E and later processors, but the decision whether to use them is made at compile time, based on compiler-defined macros.
    • To use NEON instructions, add "-mfpu=neon" to CFLAGS.
  • x86:
    • The miner checks for SSE2 instructions support at runtime, and uses them if they are available.
  • x86-64:
    • The miner can take advantage of AVX, AVX2 and XOP instructions, but only if both the CPU and the operating system support them.
      • Linux supports AVX starting from kernel version 2.6.30.
      • FreeBSD supports AVX starting with 9.1-RELEASE.
      • Mac OS X added AVX support in the 10.6.8 update.
      • Windows supports AVX starting from Windows 7 SP1 and Windows Server 2008 R2 SP1.
    • The configure script outputs a warning if the assembler doesn't support some instruction sets. In that case, the miner can still be built, but unavailable optimizations are left off.

Usage instructions

Run "cpuminer --help" to see options.

Connecting through a proxy

Use the --proxy option.

To use a SOCKS proxy, add a socks4:// or socks5:// prefix to the proxy host
Protocols socks4a and socks5h, allowing remote name resolving, are also available since libcurl 7.18.0.

If no protocol is specified, the proxy is assumed to be a HTTP proxy.
When the --proxy option is not used, the program honors the http_proxy and all_proxy environment variables.


Donations for the work done in this fork are accepted :

Tanguy Pruvot :

  • BTC: 1FhDPLPpw18X4srecguG3MxJYe4a1JsZnd
  • ZRC: ZX6LmrCwphNgitxvDnf8TX6Tsegfxpeozx

Lucas Jones :

  • MRO: 472haywQKoxFzf7asaQ4XKBc2foAY4ezk8HiN63ifW4iAbJiLnfmJfhHSR9XmVKw2WYPnszJV9MEHj9Z5WMK9VCNHaGLDmJ
  • BTC: 139QWoktddChHsZMWZFxmBva4FM96X2dhE


CPUMiner-multi was forked from pooler's CPUMiner, and has been started by Lucas Jones.

  • tpruvot added all the recent features and newer algorythmns
  • Wolf9466 helped with Intel AES-NI support for CryptoNight


GPLv2. See COPYING for details.