]> Git Repo - cpuminer-multi.git/blob - README.md
fix a few vstudio warnings
[cpuminer-multi.git] / README.md
1 CPUMiner-Multi
2 ==============
3
4 [![Build Status](https://travis-ci.org/tpruvot/cpuminer-multi.svg)](https://travis-ci.org/tpruvot/cpuminer-multi)
5
6 This is a multi-threaded CPU miner,
7 fork of [pooler](//github.com/pooler)'s cpuminer (see AUTHORS for list of contributors).
8
9 #### Table of contents
10
11 * [Algorithms](#algorithms)
12 * [Dependencies](#dependencies)
13 * [Download](#download)
14 * [Build](#build)
15 * [Usage instructions](#usage-instructions)
16 * [Donations](#donations)
17 * [Credits](#credits)
18 * [License](#license)
19
20 Algorithms
21 ==========
22 #### Currently supported
23  * ✓ __scrypt__ (Litecoin, Dogecoin, Feathercoin, ...)
24  * ✓ __scrypt:N__
25  * ✓ __scrypt-jane:N__
26  * ✓ __sha256d__ (Bitcoin, Freicoin, Peercoin/PPCoin, Terracoin, ...)
27  * ✓ __axiom__ (Axiom Shabal-256 based MemoHash)
28  * ✓ __bastion__ (Joincoin [J])
29  * ✓ __blake__ (Saffron [SFR] Blake-256)
30  * ✓ __blake2s__ (NevaCoin Blake2-S 256)
31  * ✓ __bmw__ (Midnight [MDT] BMW-256)
32  * ✓ __cryptonight__ (Bytecoin [BCN], Monero)
33  * ✓ __cryptonight-light__ (Aeon)
34  * ✓ __dmd-gr__ (Diamond-Groestl)
35  * ✓ __fresh__ (FreshCoin)
36  * ✓ __groestl__ (Groestlcoin)
37  * ✓ __lyra2RE__ (Lyrabar, Cryptocoin)
38  * ✓ __lyra2REv2__ (VertCoin [VTC])
39  * ✓ __myr-gr__ (Myriad-Groestl)
40  * ✓ __neoscrypt__ (Feathercoin)
41  * ✓ __nist5__ (MistCoin [MIC], TalkCoin [TAC], ...)
42  * ✓ __pentablake__ (Joincoin)
43  * ✓ __pluck__ (Supcoin [SUP])
44  * ✓ __quark__ (Quarkcoin)
45  * ✓ __qubit__ (MyriadCoin [MYR])
46  * ✓ __skein__ (Skeincoin, Myriadcoin, Xedoscoin, ...)
47  * ✓ __skein2__ (Woodcoin)
48  * ✓ __s3__ (OneCoin)
49  * ✓ __vanilla__ (Blake-256 8-rounds - double sha256 [VNL])
50  * ✓ __x11__ (Darkcoin [DRK], Hirocoin, Limecoin, ...)
51  * ✓ __x13__ (Sherlockcoin, [ACE], [B2B], [GRC], [XHC], ...)
52  * ✓ __x14__ (X14, Webcoin [WEB])
53  * ✓ __x15__ (RadianceCoin [RCE])
54  * ✓ __yescrypt__ (GlobalBoostY [BSTY], Unitus [UIS])
55  * ✓ __zr5__ (Ziftrcoin [ZRC])
56
57 #### Implemented, but untested
58  * ? hefty1 (Heavycoin)
59  * ? keccak (Maxcoin  HelixCoin, CryptoMeth, Galleon, 365coin, Slothcoin, BitcointalkCoin)
60  * ? luffa (Joincoin, Doomcoin)
61  * ? shavite3 (INKcoin)
62  * ? sib X11 + gost (SibCoin)
63
64 #### Planned support for
65  * *scrypt-jane* (YaCoin, CopperBars, Pennies, Tickets, etc..)
66  
67 Dependencies
68 ============
69  * libcurl http://curl.haxx.se/libcurl/
70  * jansson http://www.digip.org/jansson/ (jansson source is included in-tree)
71  * openssl libcrypto https://www.openssl.org/
72  * pthreads
73  * zlib (for curl/ssl)
74
75 Download
76 ========
77  * Windows releases: https://github.com/tpruvot/cpuminer-multi/releases
78  * Git tree:   https://github.com/tpruvot/cpuminer-multi
79    * Clone with `git clone https://github.com/tpruvot/cpuminer-multi`
80
81 Build
82 =====
83
84 #### Basic *nix build instructions:
85  * just use ./build.sh
86 _OR_
87  * ./autogen.sh # only needed if building from git repo
88  * ./nomacro.pl # only needed if building on Mac OS X or with Clang
89  * ./configure CFLAGS="*-march=native*" --with-crypto --with-curl
90    * # Use -march=native if building for a single machine
91  * make
92
93 #### Note for Debian/Ubuntu users:
94  * apt-get install autoconf pkg-config libcurl4-openssl-dev libjansson-dev libssl-dev libgmp-dev
95
96 #### Notes for AIX users:
97  * To build a 64-bit binary, export OBJECT_MODE=64
98  * GNU-style long options are not supported, but are accessible via configuration file
99
100 #### Basic Windows build with Visual Studio 2013
101  * All the required .lib files are now included in tree (windows only)
102  * AVX enabled by default for x64 platform (AVX2 and XOP could also be used)
103
104 #### Basic Windows build instructions, using MinGW64:
105  * Install MinGW64 and the MSYS Developer Tool Kit (http://www.mingw.org/)
106    * Make sure you have mstcpip.h in MinGW\include
107  * install pthreads-w64
108  * Install libcurl devel (http://curl.haxx.se/download.html)
109    * Make sure you have libcurl.m4 in MinGW\share\aclocal
110    * Make sure you have curl-config in MinGW\bin
111  * Install openssl devel (https://www.openssl.org/related/binaries.html)
112  * In the MSYS shell, run:
113    * for 64bit, you can use ./mingw64.sh else :
114      ./autogen.sh       # only needed if building from git repo
115    * LIBCURL="-lcurldll" ./configure CFLAGS="*-march=native*"
116      * # Use -march=native if building for a single machine
117    * make
118
119 #### Architecture-specific notes:
120  * ARM:
121    * 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.
122    * To use NEON instructions, add "-mfpu=neon" to CFLAGS.
123  * x86:
124    * The miner checks for SSE2 instructions support at runtime, and uses them if they are available.
125  * x86-64:      
126    * The miner can take advantage of AVX, AVX2 and XOP instructions, but only if both the CPU and the operating system support them.
127      * Linux supports AVX starting from kernel version 2.6.30.
128      * FreeBSD supports AVX starting with 9.1-RELEASE.
129      * Mac OS X added AVX support in the 10.6.8 update.
130      * Windows supports AVX starting from Windows 7 SP1 and Windows Server 2008 R2 SP1.
131    * 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.
132
133 Usage instructions
134 ==================
135 Run "cpuminer --help" to see options.
136
137 ### Connecting through a proxy
138
139 Use the --proxy option.
140
141 To use a SOCKS proxy, add a socks4:// or socks5:// prefix to the proxy host  
142 Protocols socks4a and socks5h, allowing remote name resolving, are also available since libcurl 7.18.0.
143
144 If no protocol is specified, the proxy is assumed to be a HTTP proxy.  
145 When the --proxy option is not used, the program honors the http_proxy and all_proxy environment variables.
146
147 Donations
148 =========
149 Donations for the work done in this fork are accepted :
150
151 Tanguy Pruvot :
152 * BTC: `1FhDPLPpw18X4srecguG3MxJYe4a1JsZnd`
153 * ZRC: `ZX6LmrCwphNgitxvDnf8TX6Tsegfxpeozx`
154
155 Lucas Jones :
156 * MRO: `472haywQKoxFzf7asaQ4XKBc2foAY4ezk8HiN63ifW4iAbJiLnfmJfhHSR9XmVKw2WYPnszJV9MEHj9Z5WMK9VCNHaGLDmJ`
157 * BTC: `139QWoktddChHsZMWZFxmBva4FM96X2dhE`
158
159 Credits
160 =======
161 CPUMiner-multi was forked from pooler's CPUMiner, and has been started by Lucas Jones.
162 * [tpruvot](https://github.com/tpruvot) added all the recent features and newer algorythmns
163 * [Wolf9466](https://github.com/wolf9466) helped with Intel AES-NI support for CryptoNight
164
165 License
166 =======
167 GPLv2.  See COPYING for details.
This page took 0.031524 seconds and 4 git commands to generate.