XMRig — High-performance cross-platform miner RandomX, CryptoNight and Argon2 CPU / GPU open source, with official support for Windows.
November 30, Monero (XMR) will work hard on block 1978433 to switch to a new algorithm. The upcoming fork will change the current CryptoNight R mining algorithm to the new Random X PoW algorithm, essentially transferring the coin mining to the CPU.
There are already several miners mining coins using the RandomX algorithm, one of which is XMRig v5.1.0, which you can download from the links below.
Added retrieving ARM CPU names, based on lscpu code and database.
v6.3.1
#1786 Added pause-on-battery option, supported on Windows and Linux.
Added command line options --randomx-cache-qos and --argon2-impl.
v6.3.0
#1771 Adopted new SSE2NEON and reduced ARM-specific changes.
#1774 RandomX: Added new option cache_qos in randomx object for cache QoS support.
#1777 Added support for upcoming Haven offshore fork.
#1780 CryptoNight OpenCL: fix for long input data.
v6.2.3
AstroBWT: fixed OpenCL compilation on some systems.
KawPow: optimized CPU share verification.
RandomX: added error message when MSR mod fails.
Fixed GPU health readings for pre Vega GPUs on Linux.
Added results and connection reports.
KawPow: fixed DAG initialization on slower AMD GPUs.
KawPow: fixed rare duplicate share errors.
RandomX: small speedup on Ryzen CPUs.
v5.1.0
Fixed mining resume after donation round for pools with self-select feature.
Added option "mode" (or --randomx-mode) for RandomX.
Added memory information on miner startup.
Added resources field to summary API with memory information and load average.
v5.0.1
Fixed compatibility with some AMD GPUs.
Fixed build without RandomX.
Added command line options --cuda-bfactor-hint and --cuda-bsleep-hint.
Fixed 32-bit ARM compilation.
v5.0.0
This version is first stable unified 3 in 1 GPU+CPU release, OpenCL support built in in miner and not require additional external dependencies on compile time, NVIDIA CUDA available as external CUDA plugin, for convenient, 3 in 1 downloads with recent CUDA version also provided.
This release based on 4.x.x series and include all features from v4.6.2-beta, changelog below include only the most important changes, full changelog available separately.
Optimized hashrate calculation.
Added new option dataset_host for NVIDIA GPUs with less than 4 GB memory (RandomX only).
Added support for self-select stratum protocol extension.
Added new algorithm rx/arq, RandomX variant for upcoming ArQmA fork.
Added experimental support for persistent memory for CPU mining threads.
Improved RandomX dataset memory usage and initialization speed for NUMA machines.
Fixed support for systems where total count of NUMA nodes not equal usable nodes count.
Added config option cpu/max-threads-hint and command line option --cpu-max-threads-hint.
Added JIT compiler for RandomX on ARMv8.
Improved API endpoint GET /2/backends and added support for this endpoint to workers.xmrig.info.
Added command line option --no-cpu to disable CPU backend.
Added OpenCL specific command line options: --opencl, --opencl-devices, --opencl-platform, --opencl-loader and --opencl-no-cache.
Added CUDA specific command line options: --cuda, --cuda-loader and --no-nvml.
Removed command line option --http-enabled, HTTP API enabled automatically if any other --http-* option provided.
Added OpenCL mining backend.
Added RandomX support for OpenCL, thanks @SChernykh.
Algorithm cn/wow removed, as no longer alive.
XMRig setup
The preferred way to configure the miner is the JSON configuration file, as it is more flexible and user-friendly. The command line interface does not cover all functions, such as mining profiles for various algorithms. Important parameters can be changed at runtime without rebooting the miner by editing the configuration file or making API calls.
An example of a batch file for processors:
:start
xmrig -a randomx -o pool.supportxmr.com:5555 -u 44tLjmXrQNrWJ5NBsEj2R77ZBEgDa3fEe9GLpSf2FRmhexPvfYDUAB7EXX1Hdb3aMQ9FLqdJ56yaAhiXoRsceGJCRS3Jxkn.5d3c802ee0f8e12e4eb9792722b7816a42178aa29ef7477c138ddb940c55648d.rig1 -p x --donate-level=1
goto start
Example batch file for AMD:
:start
xmrig -a randomx -o pool.supportxmr.com:5555 -u 44tLjmXrQNrWJ5NBsEj2R77ZBEgDa3fEe9GLpSf2FRmhexPvfYDUAB7EXX1Hdb3aMQ9FLqdJ56yaAhiXoRsceGJCRS3Jxkn.5d3c802ee0f8e12e4eb9792722b7816a42178aa29ef7477c138ddb940c55648d.rig1 -p x --donate-level=1 --opencl
goto start
An example of a batch file for Nvidia:
:start
xmrig -a randomx -o pool.supportxmr.com:5555 -u 44tLjmXrQNrWJ5NBsEj2R77ZBEgDa3fEe9GLpSf2FRmhexPvfYDUAB7EXX1Hdb3aMQ9FLqdJ56yaAhiXoRsceGJCRS3Jxkn.5d3c802ee0f8e12e4eb9792722b7816a42178aa29ef7477c138ddb940c55648d.rig1 -p x --donate-level=1 --cuda
goto start
Command line options
Network:
-o, --url=URL URL of mining server
-a, --algo=ALGO mining algorithm https://xmrig.com/docs/algorithms
--coin=COIN specify coin instead of algorithm
-u, --user=USERNAME username for mining server
-p, --pass=PASSWORD password for mining server
-O, --userpass=U:P username:password pair for mining server
-k, --keepalive send keepalived packet for prevent timeout (needs pool support)
--nicehash enable nicehash.com support
--rig-id=ID rig identifier for pool-side statistics (needs pool support)
--tls enable SSL/TLS support (needs pool support)
--tls-fingerprint=HEX pool TLS certificate fingerprint for strict certificate pinning
--daemon use daemon RPC instead of pool for solo mining
--daemon-poll-interval=N daemon poll interval in milliseconds (default: 1000)
-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)
--user-agent set custom user-agent string for pool
--donate-level=N donate level, default 5%% (5 minutes in 100 minutes)
--donate-over-proxy=N control donate over xmrig-proxy feature
CPU backend:
--no-cpu disable CPU mining backend
-t, --threads=N number of CPU threads
-v, --av=N algorithm variation, 0 auto select
--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)
--cpu-max-threads-hint=N maximum CPU threads count (in percentage) hint for autoconfig
--cpu-memory-pool=N number of 2 MB pages for persistent memory pool, -1 (auto), 0 (disable)
--no-huge-pages disable huge pages support
--asm=ASM ASM optimizations, possible values: auto, none, intel, ryzen, bulldozer
--randomx-init=N threads count to initialize RandomX dataset
--randomx-no-numa disable NUMA support for RandomX
API:
--api-worker-id=ID custom worker-id for API
--api-id=ID custom instance ID for API
--http-host=HOST bind host for HTTP API (default: 127.0.0.1)
--http-port=N bind port for HTTP API
--http-access-token=T access token for HTTP API
--http-no-restricted enable full remote access to HTTP API (only if access token set)
OpenCL backend:
--opencl enable OpenCL mining backend
--opencl-devices=N comma separated list of OpenCL devices to use
--opencl-platform=N OpenCL platform index or name
--opencl-loader=PATH path to OpenCL-ICD-Loader (OpenCL.dll or libOpenCL.so)
--opencl-no-cache disable OpenCL cache
--print-platforms print available OpenCL platforms and exit
CUDA backend:
--cuda enable CUDA mining backend
--cuda-loader=PATH path to CUDA plugin (xmrig-cuda.dll or libxmrig-cuda.so)
--cuda-devices=N comma separated list of CUDA devices to use
--cuda-bfactor-hint=N bfactor hint for autoconfig (0-12)
--cuda-bsleep-hint=N bsleep hint for autoconfig
--no-nvml disable NVML (NVIDIA Management Library) support
Logging:
-S, --syslog use system log for output messages
-l, --log-file=FILE log all output to a file
--print-time=N print hashrate report every N seconds
--health-print-time=N print health report every N seconds
--no-color disable colored output
Misc:
-c, --config=FILE load a JSON-format configuration file
-B, --background run the miner in the background
-V, --version output version information and exit
-h, --help display this help and exit
--dry-run test configuration and exit
--export-topology export hwloc topology to a XML file and exit
If you are choosing your first mining program, NiceHash Miner is one of the best options. Here you don't have to go through the command line, edit config files, or search for pool addresses. All you need to do is enter your Bitcoin wallet and click on the "Start Mining" button. The software configuration for each cloud mining algorithm is selected automatically.
This program will help you to configure overclocking and downvoting of your video card in more detail. MTP is being actively developed and beta versions are currently available for Windows.
The most technologically advanced frames are made of steel profiles for plasterboard and stretch ceilings, glass profiles, and the assembly of shop fronts. This profile differs from the typical profile in that it has notches or perforations. It is easy to attach video cards, power supplies and motherboard. There are ready-made holes for self-tapping screws. There is no need to drill or mark anything.