This is a multi-threaded CPU miner, fork of pooler's cpuminer (see AUTHORS for list of contributors).
This specific fork has AES optimizations for many algorithms, they are automatically used if your compiler, your CPU and the algorithm in question support it.
git clone https://github.com/hmage/cpuminer-opt
cd cpuminer-opt
sudo apt-get install build-essential libssl-dev libcurl4-openssl-dev libjansson-dev libgmp-dev automake g++
./build.sh
Instead of ./build.sh you can execute the following commands :
./autogen.sh
CFLAGS="-O3 -march=native -Wall" CXXFLAGS="$CFLAGS -std=gnu++11" ./configure --with-curl
make
To start mining
./cpuminer -a algo ...
prerequisites :
msys mingw_w64 pthreads, curl and openssl
Install msys and mingw_w64, only needed once.
Unpack msys into C:\msys or your preferred directory.
Install mingw_w64 from win-builds. Follow instructions, check "msys or cygwin" and "x86_64" and accept default existing msys instalation.
Open a msys shell by double clicking on msys.bat. Note that msys shell uses linux syntax for file specifications, "C:" is mounted at "/c/".
Add mingw bin directory to PATH variable PATH="/c/msys/opt/windows_64/bin/:$PATH"
Instalation complete, compile cpuminer-opt
Unpack cpuminer-opt source files using tar from msys shell, or using 7zip or similar Windows program.
In msys shell cd to miner directory. cd /c/path/to/cpuminer-opt
- CPU that supports SSE2.
- Linux.
- Recent enough gcc that supports
-march=native
.
- ✓ 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)
- ✓ scrypt-jane (YaCoin, CopperBars, Pennies, Tickets, etc..)
- ✓ x11 (Darkcoin [DRK], Hirocoin, Limecoin, ...)
- ✓ x13 (Sherlockcoin, [ACE], [B2B], [GRC], [XHC], ...)
- ✓ x14 (X14, Webcoin [WEB])
- ✓ x15 (RadianceCoin [RCE])
- ✓ zr5 (Ziftrcoin [ZRC])
- ? blake2s
- ? hefty1 (Heavycoin)
- ? keccak (Maxcoin, HelixCoin, CryptoMeth, Galleon, 365coin, Slothcoin, BitcointalkCoin)
- ? luffa (Joincoin, Doomcoin)
- ? shavite3 (INKcoin)
- ? sib (SibCoin)
- libcurl http://curl.haxx.se/libcurl/
- jansson http://www.digip.org/jansson/
- openssl https://www.openssl.org/
Easiest way to get them on Debian-based distributions is to run:
sudo apt-get install libssl-dev libjansson-dev libcurl4-nss-dev
Run cpuminer --help
to see options.
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
Jay D Dee:
- BTC:
12tdvfF7KmAsihBXQXynT6E6th2c2pByTT
HMage:
- BTC:
1HMageKbRBu12FkkFbMEcskAtH59TVrS2G
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.