finding help to improve the code
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
compat start Jan 13, 2018
config start Jan 13, 2018
.gitattributes Initial commit Jan 13, 2018
.gitignore start Jan 13, 2018
AUTHORS start Jan 13, 2018
COPYING start Jan 13, 2018
ChangeLog start Jan 13, 2018
Dockerfile start Jan 13, 2018
LICENSE start Jan 13, 2018 start Jan 13, 2018
NEWS typo May 1, 2018
README - May 21, 2018
aes.c inline May 24, 2018 start Jan 13, 2018
compat.h start Jan 13, 2018 start Jan 13, 2018
cpu-miner.c removed yay and boooo Aug 2, 2018
elist.h start Jan 13, 2018
example-cfg.json start Jan 13, 2018
hodl.c bind threads to cpus 0, 2, 4 etc Jun 3, 2018
hodl.h bind threads to cpus 0, 2, 4 etc Jun 3, 2018
hodlminer.1 start Jan 13, 2018 More accurate hash rate calculation Jan 15, 2018
miner.h Show block number and difficulty Jul 11, 2018 start Jan 13, 2018
sha2.c start Jan 13, 2018
sha256.h start Jan 13, 2018
sha512.h start Jan 13, 2018
sha512_avx2.c sha512_avx2.c from optiminer May 27, 2018
sha512_avx2.c-old sha512_avx2.c from optiminer May 27, 2018
sha512_sse2.c edit Jan 29, 2018
util.c Colors for block number and difficulty Jul 15, 2018
wolf-aes.h Optiminer's new optimizations Mar 13, 2018


This is a multi-threaded CPU miner for Litecoin and Bitcoin,
fork of Jeff Garzik's reference cpuminer.

License: GPLv2.  See COPYING for details.

This hodlminer version is based on wolf's hodlminer and optimized by optiminer.

		(jansson is included in-tree)

Ubuntu, Debian and Linux Mint build instructions:
	sudo apt-get install git git-core
	sudo apt-get install build-essential pkg-config libcurl4-openssl-dev libssl-dev
	sudo apt-get install automake
	git clone
	cd hodlminer
	chmod u+x
	./configure CFLAGS="-O3 -march=native"

	To use Hodlminer with Suprnova run:
	./hodlminer -o stratum+tcp:// -u <username>.<worker_name> -p <worker_password> -q

Windows 64 bit build instructions:


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 instructions, using MinGW:
	Install MinGW and the MSYS Developer Tool Kit (
		* Make sure you have mstcpip.h in MinGW\include
	If using MinGW-w64, install pthreads-w64
	Install libcurl devel (
		* Make sure you have libcurl.m4 in MinGW\share\aclocal
		* Make sure you have curl-config in MinGW\bin
	In the MSYS shell, run:
		./	# only needed if building from git repo
		LIBCURL="-lcurldll" ./configure CFLAGS="-O3"

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.
	PowerPC: No runtime CPU detection.
		To use AltiVec instructions, add "-maltivec" 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.
		The miner uses the VIA Padlock Hash Engine where available.

Usage instructions:  Run "minerd --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.

Also many issues and FAQs are covered in the forum thread
dedicated to this program,