Faster than Phoenix 1.3 by 6.3%[1] on HD 69xx.
Faster than ArtForz's private calminer on HD 69xx.
hdminer is a miner I developed for AMD Radeon cards using the low-level CAL interface (as opposed to OpenCL). Its target market is cluster owners who operate 20+ GPUs and are power or cooling constrained, yet need that +6.3% perf improvement without increasing power consumption or cooling needs.
- 840 Mhash/sec on a Radeon HD 6990 (BIOS switch at "overclocked" position 1; with "aticonfig --odsc=960,1260" to further overclock the GPU to 960 MHz and mem to 1260 MHz)
- 802 Mhash/sec on a Radeon HD 6990 (BIOS switch at "overclocked" position 1; with "aticonfig --odsc=915,1260" to further overclock the GPU to 915 MHz and mem to 1260 MHz)
- 746 Mhash/sec on a Radeon HD 6990 (BIOS switch at "overclocked" position 1) -- this is higher than the theoretical 723 Mhash/s I would expect for this clock because hdminer leaves some TDP headroom which allows AMD PowerTune to dynamically adjust the clock to a value averaging more than 880MHz
- 708 Mhash/sec on a Radeon HD 6990 (BIOS switch at "default" position 2) -- this speed has been measured with Catalyst 11.1. Catalyst 11.2 through 11.4 contain a performance regression affecting my compute shader that downgrades the speed to 683 Mhash/s. However because aticonfig in Catalyst 11.1 does not support the HD 6990, I advise users to initially install Catalyst 11.4 or later, run aticonfig to generate xorg.conf, then downgrade to 11.1 for operating hdminer on a day-to-day basis.
- 569 Mhash/sec on a Radeon HD 5970 (stock clock 725MHz)
On the HD 69xx series this is about
6.3%[1] faster than the fastest publicly available miner (Phoenix). (On the 5xxx series, hdminer is less optimized and appears to be currently 5% slower than Phoenix.) I am selling it for
250 BTC. Email me
m.bevand@gmail.com. Check my user rating on irc/freenode: my nick is "mrb_". What you get:
- Source code (compiles for Linux)
- Supports AMD Radeon HD 5000/6000 series
only (HD 4000 and earlier not supported)
- No 100% CPU busy loop! Most combinations of OpenCL miners/Catalyst drivers/SDK versions suffer from a "busy event loop" bug, but not hdminer because it is written in CAL, so does not use OpenCL. A pinky single-core AMD Sempron 140 2.7GHz is amply sufficient to handle the speed of 3 x HD 6990 for example.
- Internal SHA-256 implementation uses BIT_ALIGN and BFI_INT instructions (the first miner ever to do so; read about what is and how I added BFI_INT support to another GPGPU app I wrote:
http://blog.zorinaq.com/?e=43)
- Supports as many GPUs as the Catalyst driver can support (currently AMD supports 8 GPUs on Linux, such as 4 x HD6990, or 4 x HD5970)
- Simple command line interface (see screenshot below)
- Connects to bitcoin via the standard RPC 'getwork' interface (compatible with bitcoin version 0.3.19 and up)
- Compatible with mining pools
[1] HD 6990 stock GPU 830MHz clock, stock memory clock, stock GPU VDDC, stock memory voltage: hdminer 708 Mhash/s vs. Phoenix 666 Mhash/s source:
http://bitcointalk.org/index.php?topic=2949.msg106238#msg106238Screenshot of it running on a 4 x dual-GPU HD 5970 computer (8 GPUs total):
Dead easy guide to set it up from scratch from a fresh Ubuntu 10.04 install:
These steps have been tested on a fresh Ubuntu 10.04 (lucid lynx) install.
1. Install the dependencies for compiling the Catalyst driver and hdminer:
$ sudo apt-get install build-essential linux-headers-generic dkms libqtcore4 lib32gcc1 libglu1-mesa libxrandr2 libxinerama1 libcurl4-gnutls-dev
2. Download the Catalyst driver (eg. ati-driver-installer-11-3-x86.x86_64.run):
http://support.amd.com/us/gpudownload/Pages/index.aspx
And install it:
$ sudo sh ati-driver-installer-11-3-x86.x86_64.run
(Select all default options.)
3. Create /etc/X11/xorg.conf (and fix the wrong perms set by aticonfig):
$ sudo aticonfig --initial -f --adapter=all
$ sudo chmod 644 /etc/X11/xorg.conf
4. Reboot to make sure that the Catalyst kernel module fglrx.ko loads correctly
and that X11 starts properly configured:
$ sudo reboot
5. Download the APP SDK (eg. AMD-APP-SDK-v2.4-lnx64.tgz):
http://developer.amd.com/gpu/AMDAPPSDK/downloads/Pages/default.aspx
And extract it in /usr/local:
$ sudo tar -C /usr/local -xzf AMD-APP-SDK-v2.4-lnx64.tgz
6. In hdminer, in the Makefile, edit SDK_PATH to point to the SDK:
SDK_PATH = /usr/local/AMD-APP-SDK-v2.4-lnx64
And compile it:
$ make
7. Mine! (By default, hdminer connects to the bitcoin JSON-RPC endpoint on
localhost, on the default port 8332, and authenticates with the user/password
bitcoin/password):
$ ./hdminer
To specify non-default values (eg. to mine on a pool):
$ ./hdminer -s servername -p 8332 -a user:password
See help:
$ ./hdminer -h