XMRig v6.7.0 (CPU/GPU miner): Скачать и Настроить для Windows

GitHub:

XMRig – Высокопроизводительный кроссплатформенный майнер RandomX, CryptoNight, KawPow, AstroBWT и Argon2 с открытым исходным кодом, с официальной поддержкой Windows и Linux. Программа для добычи монет на алгоритмах RandomX и CryptoNight. Подходит как для видеокарт семейства AMD и Nvidia, так и для процессоров. Программа имеет комиссию разработчику в виде 1-5%. В данной пошаговой инструкции мы расскажем как настроить комиссию и батники для разных монет.

Изменения в v6.4.0:

  • #1862 RandomX: removed rx/loki algorithm.
  • #1890 Added argon2/chukwav2 algorithm.
  • #1895 #1897 Added benchmark and stress test.
  • #1864 RandomX: improved software AES performance.
  • #1870 RandomX: fixed unexpected resume due to disconnect during dataset init.
  • #1872 RandomX: fixed randomx_create_vm call.
  • #1875 RandomX: fixed crash on x86.
  • #1876 RandomX: added huge-pages-jit config parameter.
  • #1881 Fixed possible race condition in hashrate counting code.
  • #1882 #1886 #1887 #1893 General code improvements.
  • #1885 Added more precise hashrate calculation.
  • #1889 Fixed libuv performance issue on Linux.

Поддерживает алгоритмы:

ИмяПамятьВерсияПримечание
rx/arq256 KB4.3.0+RandomARQ (RandomX variant for ArQmA).
rx/02 MB3.2.0+RandomX (Monero).
argon2/chukwa512 KB3.1.0+Argon2id (Chukwa).
argon2/wrkz256 KB3.1.0+Argon2id (WRKZ)
rx/wow1 MB3.0.0+RandomWOW (RandomX variant for Wownero).
rx/loki2 MB3.0.0+RandomXL (RandomX variant for Loki).
cn/fast2 MB3.0.0+CryptoNight variant 1 with half iterations.
cn/rwz2 MB2.14.0+CryptoNight variant 2 with 3/4 iterations and reversed shuffle operation.
cn/zls2 MB2.14.0+CryptoNight variant 2 with 3/4 iterations.
cn/double2 MB2.14.0+CryptoNight variant 2 with double iterations.
cn/r2 MB2.13.0+CryptoNightR (Monero’s variant 4).
cn/wow2 MB2.12.0+CryptoNightR (Wownero).
cn/gpu2 MB2.11.0+CryptoNight-GPU.
cn-pico256 KB2.10.0+CryptoNight-Pico.
cn/half2 MB2.9.0+CryptoNight variant 2 with half iterations.
cn/22 MB2.8.0+CryptoNight variant 2.
cn/xao2 MB2.6.4+CryptoNight variant 0 (modified).
cn/rto2 MB2.6.4+CryptoNight variant 1 (modified).
cn-heavy/tube4 MB2.6.4+CryptoNight-Heavy (modified).
cn-heavy/xhv4 MB2.6.3+CryptoNight-Heavy (modified).
cn-heavy/04 MB2.6.0+CryptoNight-Heavy.
cn/12 MB2.5.0+CryptoNight variant 1.
cn-lite/11 MB2.5.0+CryptoNight-Lite variant 1.
cn-lite/01 MB0.8.0+CryptoNight-Lite variant 0.
cn/02 MB0.5.0+CryptoNight (original).

Итог

Команда LXD проделала многомесячную работу над созданием языка, позволяющего легко описать ваши ограничения. Задача была создать лёгкий и в тоже время мощный язык, позволяющий указать вашу специфику. Указание лимитов на лету и наследование через профиля дают вам мощный инструмент для управления нагрузкой без пагубного влияния на работающие службы.

Оглавление цикла статей про LXD 2.0. Предыдущая статья LXD 2.0: Ваш первый LXD контейнер [3/12]. Следующая статья LXD 2.0: Управление образами [5/12].
Дата последней правки: 2016-04-22 09:04:38

Использование и Настройка

Предпочтительным способом настройки майнера является файл конфигурации JSON, так как он более гибкий и удобный для пользователя. Интерфейс командной строки не охватывает все функции, такие как профили майнинга для различных алгоритмов. Важные параметры могут быть изменены во время выполнения без перезагрузки майнера путем редактирования файла конфигурации или выполнения вызовов API.

  • – поможет вам создать начальную конфигурацию для майнера.
  • – помогает управлять вашими майнерами через HTTP API.

Быстрый старт

Для того, что бы добывать монеты нужно:

  1. скачать программу
  2. разархивировать в любое удобное место
  3. отредактировать .bat файл с нужной монетой (поменять кошелек на свой)

Настройка xmrig для майнинга Monero

Для добычи монет на алгоритме randomx нам нужно создать или отредактировать готовый батник под нужную Вам монету. Это базовые настройки, которых достаточно для майнинга. Вторичные настройки рассмотрим позже.

Расшифровка содержимого батника

  1. xmrig данный ключ укажет какая программа будет запущена. Оставляем как есть. Для Нвидиа укажем xmrig-nvidia
  2. -a randomx указываем алгоритм. Для Monero оставляем этот. Для монет на алгоритме cryptonight-lite указываем его
  3. -o pool.supportxmr.com указываем адрес Вашего пула. В данном примере у нас supportxmr, т.к. на момент написания статьи он получил наибольшее число положительных отзывов
  4. 5555 после адреса пула через двоеточие указываем порт пула. у dwarfpool это 8050
  5. -u 4ALcw9nTAStZSshoWVUJakZ6tLwTDhixhQUQNJkCn4t3fG3MMK19WZM44HnQRvjqmz4LkkA8t565v7iBwQXx2r34HNroSAZ после ключа -u указываем адрес Вашего цифрового кошелька. Получите его на , либо установите холодный кошелек
  6. —donate-level=1 настраиваем комиссию майнера. По умолчанию она составляет 5%. level=1 означает 1%

Пример батника для NiceHash:

xmrig -a randomx -o randomxmonero.eu.nicehash.com:3380 -u 1Pz3EcHsRuJkraNRACUrBrLaxiTPP1VHJZ.rig1 pause

Пример батника для AMD:

:start xmrig -a randomx -o xmr-eu1.nanopool.org:14444 -u 44tLjmXrQNrWJ5NBsEj2R77ZBEgDa3fEe9GLpSf2FRmhexPvfYDUAB7EXX1Hdb3aMQ9FLqdJ56yaAhiXoRsceGJCRS3Jxkn.5d3c802ee0f8e12e4eb9792722b7816a42178aa29ef7477c138ddb940c55648d.rig1 -p x —donate-level=1 —opencl goto start

Пример батника для Nvidia:

:start xmrig -a randomx -o pool.supportxmr.com:5555 -u 44tLjmXrQNrWJ5NBsEj2R77ZBEgDa3fEe9GLpSf2FRmhexPvfYDUAB7EXX1Hdb3aMQ9FLqdJ56yaAhiXoRsceGJCRS3Jxkn.5d3c802ee0f8e12e4eb9792722b7816a42178aa29ef7477c138ddb940c55648d.rig1 -p x —donate-level=1 —cuda goto start
Загрузите прямо сейчас готовые .bat фалы:

Память

Лимиты про память звучат просто — дайте мне X Мб ОЗУ! Поддерживаются запросы с помощью процентов — дайте мне 10% ОЗУ хоста! Так же можете реализовать следующее: выбрать включён или не включён swap на уровне каждого контейнера и если он включён, то указать контейнеру чтобы выгружал память в swap в первую очередь.

Ограничения память по умолчанию жёсткие (hard). То есть когда кончится память, то OOM Killer (out of memory killer) начнёт резвиться с вашими процессами. В качестве альтернативы вы можете установить мягкие (soft) ограничения, тогда позволено будет потреблять сколько хотите пока кто-то так же не потребует памяти. Вам не будет выделено памяти до тех пор пока не отдадите обратно ниже своего лимита или пока хост не получит память от других контейнеров.

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 -x, —proxy=HOST:PORT connect through a SOCKS5 proxy -k, —keepalive send keepalive 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) —cpu-no-yield prefer maximum hashrate rather than system response/stability —no-huge-pages disable huge pages support —asm=ASM ASM optimizations, possible values: auto, none, intel, ryzen, bulldozer —randomx-init=N thread count to initialize 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 dataset (Linux only) —randomx-wrmsr=N write custom value (0-15) to Intel MSR register 0x1a4 or disable MSR mod (-1) —randomx-no-rdmsr disable reverting initial MSR values on exit —astrobwt-max-size=N skip hashes with large stage 2 size, default: 550, min: 400, max: 1200 —astrobwt-avx2 enable AVX2 optimizations for AstroBWT algorithm 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 TLS: —tls-gen=HOSTNAME generate TLS certificate for specific hostname —tls-cert=FILE load TLS certificate chain from a file in the PEM format —tls-cert-key=FILE load 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 list of available ciphers (TLSv1.2 and below) —tls-ciphersuites=S set list of available TLSv1.3 ciphersuites 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 —verbose verbose 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

Применение лимитов

Все лимиты применяются непосредственно к контейнеру или к одному из его профилей. Ко всему в пределах контейнера — lxc config set CONTAINER KEY VALUE Ко всему в пределах данного профиля — lxc profile set PROFILE KEY VALUE Можно более тонко указать ограничения: для конкретного устройства контейнера — lxc config device set CONTAINER DEVICE KEY VALUE для конкретного устройства в профиле — lxc profile device set CONTAINER DEVICE KEY VALUE

Полный список опций конфигурации, типы устройств и ключи для них доступны в документации configuration

CPU

Лимит для контейнера только 2 ЦПУ — lxc config set my-container limits.cpu 2 Указываем использовать конкретные ядра — lxc config set my-container limits.cpu 1,3 Более сложный пример, с использованием диапазонов — lxc config set my-container limits.cpu 0-3,7-11

Ограничения применяются на лету и это подтверждает пример: lxc exec zerotier — cat /proc/cpuinfo | grep ^proces processor : 0 processor : 1 processor : 2 processor : 3

lxc config set zerotier limits.cpu 2 lxc exec zerotier — cat /proc/cpuinfo | grep ^proces processor : 0 processor : 1

Обратите внимание, чтобы избежать запутывания userspace, lxcfs упорядочивает /proc/cpuinfo таким образом, чтобы не было промежутков-окон (gaps).

Как и всё в LXD, ограничения могут применяться из профиля lxc exec snappy — cat /proc/cpuinfo | grep ^proces processor : 0 processor : 1 processor : 2 processor : 3

lxc profile set default limits.cpu 3 lxc exec snappy — cat /proc/cpuinfo | grep ^proces processor : 0 processor : 1 processor : 2

Указываем лимиты процессорного времени в 10% от общего — lxc config set my-container limits.cpu.allowance 10% Жёстко нарезаем процессорное время — lxc config set my-container limits.cpu.allowance 25ms/200ms Уменьшаем приоритет контейнера до минимума — lxc config set my-container limits.cpu.priority 0

Memory

Просто ограничиваем предел ОЗУ — lxc config set my-container limits.memory 256MB Поддерживаются суффиксы kB, MB, GB, TB, PB и EB.

Отключить swap для контейнера (включён по умолчанию) — lxc config set my-container limits.memory.swap false Объяснить ядру, что приоритетнее вытеснение памяти в swap — lxc config set my-container limits.memory.swap.priority 0 Переключаем лимиты из hard в soft — lxc config set my-container limits.memory.enforce soft

Диск и блочный I/O

В отличие от процессора и памяти, ограничения диска и ввода-вывода применяются к конкретному физическому устройству. Устанавливаем квоту (требуется btrfs и ZFS) — lxc config device set my-container root size 20GB Пример lxc exec zerotier — df -h /

Filesystem Size Used Avail Use% Mounted on encrypted/lxd/containers/zerotier 179G 542M 178G 1% /

lxc config device set zerotier root size 20GB lxc exec zerotier — df -h /

Filesystem Size Used Avail Use% Mounted on encrypted/lxd/containers/zerotier 20G 542M 20G 3% /

Скорость указываем так lxc config device set my-container limits.read 30MB lxc config device set my-container limits.write 10MB

Можно в IOPS lxc config device set my-container limits.read 20Iops lxc config device set my-container limits.write 10Iops

На загруженной системе для увеличения приоритета I/O на максимум — lxc config set my-container limits.disk.priority 10

Network I/O

Пример lxc exec zerotier — wget speedtest.newark.linode.com/100MB-newark.bin -O /dev/NULL

—2016-03-26 22:17:34— speedtest.newark.linode.com/100MB-newark.bin Resolving speedtest.newark.linode.com (speedtest.newark.linode.com)… 50.116.57.237, 2600:3c03::4b Connecting to speedtest.newark.linode.com (speedtest.newark.linode.com)|50.116.57.237|:80… connected. HTTP request sent, awaiting response… 200 OK Length: 104857600 (100M) [application/octet-stream] Saving to: ‘/dev/NULL’ /dev/NULL 100%[===================>] 100.00M 58.7MB/s in 1.7s 2016-03-26 22:17:36 (58.7 MB/s) — ‘/dev/NULL’ saved [104857600/104857600]

lxc profile device set default eth0 limits.ingress 100Mbit lxc profile device set default eth0 limits.egress 100Mbit lxc exec zerotier — wget speedtest.newark.linode.com/100MB-newark.bin -O /dev/NULL

—2016-03-26 22:17:47— speedtest.newark.linode.com/100MB-newark.bin Resolving speedtest.newark.linode.com (speedtest.newark.linode.com)… 50.116.57.237, 2600:3c03::4b Connecting to speedtest.newark.linode.com (speedtest.newark.linode.com)|50.116.57.237|:80… connected. HTTP request sent, awaiting response… 200 OK Length: 104857600 (100M) [application/octet-stream] Saving to: ‘/dev/NULL’ /dev/NULL 100%[===================>] 100.00M 11.4MB/s in 8.8s 2016-03-26 22:17:56 (11.4 MB/s) — ‘/dev/NULL’ saved [104857600/104857600]

Выставляем приоритет — lxc config set my-container limits.network.priority 5

Рейтинг
( 2 оценки, среднее 4.5 из 5 )
Понравилась статья? Поделиться с друзьями: