RandomX, KawPow, CryptoNight and GhostRider unified CPU/GPU miner and RandomX benchmark
Find a file
2017-10-07 00:56:32 +03:00
cmake Sync changes with xmrig-nvidia 2017-09-02 19:04:40 +03:00
res Initial libuv support build. 2017-06-04 20:52:21 +03:00
src Add comments to config file. 2017-10-07 00:49:38 +03:00
test * Implement --max-cpu-usage. 2017-05-10 19:38:35 +03:00
.gitignore Initial libuv support build. 2017-06-04 20:52:21 +03:00
CHANGELOG.md Update CHANGELOG.md 2017-10-07 00:56:32 +03:00
CMakeLists.txt Fix for msvc 2017-10-07 00:06:58 +03:00
LICENSE Initial import. 2017-04-15 09:02:08 +03:00
README.md Update README.md 2017-08-20 10:32:52 +03:00

XMRig

XMRig is high performance Monero (XMR) CPU miner, with the official full Windows support. Originally based on cpuminer-multi with heavy optimizations/rewrites and removing a lot of legacy code, since version 1.0.0 complete rewritten from scratch on C++.

Table of contents

Features

  • High performance.
  • Official Windows support.
  • Small Windows executable, without dependencies.
  • x86/x64 support.
  • Support for backup (failover) mining server.
  • keepalived support.
  • Command line options compatible with cpuminer.
  • CryptoNight-Lite support for AEON.
  • Smart automatic CPU configuration.
  • Nicehash support
  • It's open source software.

Download

Usage

Basic example

xmrig.exe -o pool.minemonero.pro:5555 -u YOUR_WALLET -p x -k

Failover

xmrig.exe -o pool.minemonero.pro:5555 -u YOUR_WALLET1 -p x -k -o pool.supportxmr.com:5555 -u YOUR_WALLET2 -p x -k

For failover you can add multiple pools, maximum count not limited.

Options

  -a, --algo=ALGO       cryptonight (default) or cryptonight-lite
  -o, --url=URL         URL of mining server
  -O, --userpass=U:P    username:password pair for mining server
  -u, --user=USERNAME   username for mining server
  -p, --pass=PASSWORD   password for mining server
  -t, --threads=N       number of miner threads
  -v, --av=N            algorithm variation, 0 auto select
  -k, --keepalive       send keepalived for prevent timeout (need pool support)
  -r, --retries=N       number of times to retry before switch to backup server (default: 5)
  -R, --retry-pause=N   time to pause between retries (default: 5)
      --cpu-affinity    set process affinity to CPU core(s), mask 0x3 for cores 0 and 1
      --cpu-priority    set process priority (0 idle, 2 normal to 5 highest)
      --no-huge-pages   disable huge pages support
      --no-color        disable colored output
      --donate-level=N  donate level, default 5% (5 minutes in 100 minutes)
      --user-agent      set custom user-agent string for pool
  -B, --background      run the miner in the background
  -c, --config=FILE     load a JSON-format configuration file
  -l, --log-file=FILE   log all output to a file
      --max-cpu-usage=N maximum CPU usage for automatic threads mode (default 75)
      --safe            safe adjust threads and av settings for current CPU
      --nicehash        enable nicehash support
      --print-time=N    print hashrate report every N seconds
  -h, --help            display this help and exit
  -V, --version         output version information and exit

Also you can use configuration via config file, default config.json. You can load multiple config files and combine it with command line options.

Algorithm variations

Since version 0.8.0.

  • --av=1 For CPUs with hardware AES.
  • --av=2 Lower power mode (double hash) of 1.
  • --av=3 Software AES implementation.
  • --av=4 Lower power mode (double hash) of 3.

Common Issues

HUGE PAGES unavailable

  • Run XMRig as Administrator.
  • Since version 0.8.0 XMRig automatically enable SeLockMemoryPrivilege for current user, but reboot or sign out still required. Manual instruction.

Other information

  • No HTTP support, only stratum protocol support.
  • No TLS support.
  • Default donation 5% (5 minutes in 100 minutes) can be reduced to 1% via command line option --donate-level.

CPU mining performance

  • Intel i7-7700 - 307 H/s (4 threads)
  • AMD Ryzen 7 1700X - 560 H/s (8 threads)

Please note performance is highly dependent on system load. The numbers above are obtained on an idle system. Tasks heavily using a processor cache, such as video playback, can greatly degrade hashrate. Optimal number of threads depends on the size of the L3 cache of a processor, 1 thread requires 2 MB of cache.

Maximum performance checklist

  • Idle operating system.
  • Do not exceed optimal thread count.
  • Use modern CPUs with AES-NI instructuon set.
  • Try setup optimal cpu affinity.
  • Enable fast memory (Large/Huge pages).

Donations

  • XMR: 48edfHu7V9Z84YzzMa6fUueoELZ9ZRXq9VetWzYGzKt52XU5xvqgzYnDK9URnRoJMk1j8nLwEVsaSWJ4fhdUyZijBGUicoD
  • BTC: 1P7ujsXeX7GxQwHNnJsRMgAdNkFZmNVqJT

Contacts