XMRIG(1)

πŸ“¦
version 6.26.0 Β· 5 versions
, in ubuntu stonking

πŸ’– NAME πŸ’–

XMRig β€” a CPU/GPU cryptocurrency miner. yeah bestie, we're literally mining crypto with our own silicon, it's giving main character energy β›οΈβœ¨


🌈 SYNOPSIS 🌈

xmrig [OPTIONS]

that's it. that's the whole vibe. drop in some options and she goes πŸš€


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so like, XMRig has so many options and they're all organized into little categories, so let's do a tour together bestie, no skimming, we do this properly πŸ’…

🌐 Network 🌐

the "how do I actually talk to a pool" section, extremely important, lowkey the whole point 🫢

  • -o, --url=URL β€” the URL of the mining server. your pool's address, your destiny, your home 🏠
  • -a, --algo=ALGO β€” which mining algorithm to use. full list lives at https://xmrig.com/docs/algorithms β€” go peek, it's iconic
  • --coin=COIN β€” specify a coin instead of an algorithm. like, just tell her the coin and she figures the rest out πŸ’…
  • -u, --user=USERNAME β€” your username on the mining server
  • -p, --pass=PASSWORD β€” your password on the mining server
  • -O, --userpass=U:P β€” the username:password pair, both at once, efficiency queen πŸ‘‘
  • -x, --proxy=HOST:PORT β€” connect through a SOCKS5 proxy
  • -k, --keepalive β€” send a keepalived packet so you don't get timed out. heads up, this needs pool support to do anything
  • --nicehash β€” enable nicehash.com support
  • --rig-id=ID β€” rig identifier for pool-side statistics. also needs pool support
  • --tls β€” enable SSL/TLS support. yup, needs pool support
  • --tls-fingerprint=HEX β€” pool TLS certificate fingerprint, for strict certificate pinning. paranoia but make it ✨secure✨
  • -4, --ipv4 β€” resolve names to IPv4 addresses
  • -6, --ipv6 β€” resolve names to IPv6 addresses
  • --dns-ttl=N β€” TTL for the internal DNS cache, in seconds. default is 30
  • --daemon β€” use daemon RPC instead of a pool, for solo mining. solo queen behavior πŸ’€
  • --daemon-zmq-port=N β€” the daemon's zmq-pub port number. only use this if the daemon actually has it enabled, otherwise she's just gonna sit there confused
  • --daemon-poll-interval=N β€” daemon poll interval in milliseconds. default: 1000
  • --daemon-job-timeout=N β€” daemon job timeout in milliseconds. default: 15000
  • --self-select=URL β€” self-select block templates from a URL
  • --submit-to-origin β€” also submit the solution back to the self-select URL
  • -r, --retries=N β€” how many times to retry before switching to the backup server. default: 5
  • -R, --retry-pause=N β€” how long to pause between retries. default: 5
  • --user-agent β€” set a custom user-agent string for the pool
  • --donate-level=N β€” the donate level, default 1% (that's 1 minute out of 100 minutes, bestie, she's not greedy πŸ₯Ί)
  • --donate-over-proxy=N β€” control the donate over xmrig-proxy feature

🧠 CPU backend 🧠

the part where your processor earns its keep. very demure, very mindful, very hot πŸ”₯

  • --no-cpu β€” disable the CPU mining backend entirely
  • -t, --threads=N β€” number of CPU threads. ngl, proper CPU affinity is required for some optimizations, so don't skip that
  • --cpu-affinity=N β€” set process affinity to CPU core(s). mask 0x3 means cores 0 and 1 🎯
  • -v, --av=N β€” algorithm variation. 0 means auto select
  • --cpu-priority=N β€” set process priority. 0 is idle, 2 is normal, up to 5 which is highest
  • --cpu-max-threads-hint=N β€” hint for autoconfig telling it the maximum CPU threads count, as a percentage
  • --cpu-memory-pool=N β€” number of 2 MB pages for the persistent memory pool. -1 is auto, 0 disables it
  • --cpu-no-yield β€” prefer maximum hashrate over system response/stability. yeah she's gonna hog the machine, that's the point πŸ’€
  • --no-huge-pages β€” disable huge pages support
  • --hugepage-size=N β€” custom hugepage size in kB
  • --huge-pages-jit β€” enable huge pages support for RandomX JIT code
  • --asm=ASM β€” ASM optimizations. possible values: auto, none, intel, ryzen, bulldozer
  • --argon2-impl=IMPL β€” argon2 implementation. options: x86_64, SSE2, SSSE3, XOP, AVX2, AVX-512F
  • --randomx-init=N β€” threads count to initialize the RandomX dataset
  • --randomx-no-numa β€” disable NUMA support for RandomX
  • --randomx-mode=MODE β€” RandomX mode: auto, fast, light
  • --randomx-1gb-pages β€” use 1GB hugepages for the RandomX dataset. Linux only, bestie, sorry to the Windows girlies 🐧
  • --randomx-wrmsr=N β€” write custom value(s) to MSR registers, or disable the MSR mod with -1
  • --randomx-no-rdmsr β€” disable reverting the initial MSR values on exit
  • --randomx-cache-qos β€” enable Cache QoS

🌸 OpenCL backend 🌸

for when you want your GPU in on the action, it's giving graphics card glow-up πŸŽ€

  • --opencl β€” enable the 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 the OpenCL-ICD-Loader (OpenCL.dll or libOpenCL.so)
  • --opencl-no-cache β€” disable the OpenCL cache
  • --print-platforms β€” print the available OpenCL platforms and exit. a little sneak peek, then she's gone πŸ™ˆ

πŸ’œ CUDA backend πŸ’œ

NVIDIA girlies this one's for you, the green team ate 🌈

  • --cuda β€” enable the CUDA mining backend
  • --cuda-loader=PATH β€” path to the 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, between 0 and 12
  • --cuda-bsleep-hint=N β€” bsleep hint for autoconfig
  • --no-nvml β€” disable NVML (NVIDIA Management Library) support

πŸ›°οΈ API πŸ›°οΈ

so other things can talk to your miner. networking but make it gossip 🫢

  • --api-worker-id=ID β€” custom worker-id for the API
  • --api-id=ID β€” custom instance ID for the API
  • --http-host=HOST β€” bind host for the HTTP API. default: 127.0.0.1
  • --http-port=N β€” bind port for the HTTP API
  • --http-access-token=T β€” access token for the HTTP API
  • --http-no-restricted β€” enable full remote access to the HTTP API. only if an access token is set, bestie, do not play with this one ⚠️

πŸ” TLS πŸ”

certificates and ciphers, very serious, very grown-up, very secure ✨

  • --tls-gen=HOSTNAME β€” generate a TLS certificate for a specific hostname
  • --tls-cert=FILE β€” load the TLS certificate chain from a file in the PEM format
  • --tls-cert-key=FILE β€” load the TLS certificate private key from a file in the PEM format
  • --tls-dhparam=FILE β€” load DH parameters for DHE ciphers from a file in the PEM format
  • --tls-protocols=N β€” enable specified TLS protocols. example: "TLSv1 TLSv1.1 TLSv1.2 TLSv1.3"
  • --tls-ciphers=S β€” set the list of available ciphers (TLSv1.2 and below)
  • --tls-ciphersuites=S β€” set the list of available TLSv1.3 ciphersuites

πŸ“ Logging πŸ“

the receipts, the lore, the documentation of what your rig has been up to πŸ’…

  • -S, --syslog β€” use the system log for output messages
  • -l, --log-file=FILE β€” log all output to a file
  • --print-time=N β€” print a hashrate report every N seconds
  • --health-print-time=N β€” print a health report every N seconds
  • --no-color β€” disable colored output. (why would you, it's so pretty, but ok πŸ₯²)
  • --verbose β€” verbose output

πŸŽ€ Misc πŸŽ€

the grab bag, the everything-else drawer, the bits and bobs πŸ“

  • -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 the configuration and exit
  • --export-topology β€” export the hwloc topology to a XML file and exit
  • --pause-on-battery β€” pause mining on battery power
  • --pause-on-active=N β€” pause mining when the user is active, and resume after N seconds of last activity
  • --stress β€” run a continuous stress test to check system stability. it's literally just stress, no cap 😀
  • --bench=N β€” run a benchmark. N can be between 1M and 10M
  • --submit β€” perform an online benchmark and submit the result for sharing
  • --verify=ID β€” verify a submitted benchmark by ID
  • --seed=SEED β€” custom RandomX seed for the benchmark
  • --hash=HASH β€” compare the benchmark result with a specified hash
  • --no-dmi β€” disable the DMI/SMBIOS reader

and then she hits you with the build receipts:

features: 64-bit AES

libuv/1.52.1 OpenSSL/4.0.1 hwloc/2.14.0

🫢 SEE ALSO 🫢

The full documentation for XMRig is maintained as a Texinfo manual. If the info and XMRig programs are properly installed at your site, the command

info XMRig

should give you access to the complete manual. she has a whole manual, bestie, she's not just a one-page girlie πŸ“–πŸ’–


that's the tea, the whole page, every single flag, nothing skipped because we don't do half-effort around here πŸ’… this was XMRig 6.26.0 built with GCC 15.3.0, from August 2026, living under the User Commands banner as XMRIG(1) β€” now go mine something gorgeous, mwah πŸ˜˜πŸ‘‘

πŸ“¦ where this page comes from