cpu affinity что это

XMRig: Скачать и настроить для майнинга Monero и других валют

В этом руководстве рассмотрено как запустить и как пользоваться программой XMRig последней версии 6.16.1 и выше.

Скачать для Windows/Linux

Что такое XMRig?

– это консольный софт, задействующий специальные команды для майнинга таких криптовалют, как Monero (XMR). Для его работы необходимо создать файл конфигурации. Работает майнер с процессором (CPU) и видеокартами (AMD и Nvidia). Комиссия устанавливается в диапазоне от 1 до 5 процентов. По умолчанию стоит максимальное значения.

Как настроить XMRig

Есть два варианта, чтобы скачать программу:

В релизах GitHub прокрутите страницу до «Assets» и загрузите последнюю доступную версию.

Проведите разархивацию загруженного файла в удобное для вас место.

Просто замените XFxjQVYoJjQBeyfbcYBgJ1tw4cgywGyTp12nQw3mSKZctgMYuPGRH1y2LuBAS8yyT8ZX2NDS3CXbfFAxdXQJwAGMoMDSq на ваш адрес кошелька Monero.

Нижняя строчка отображает хешрейт.

Видео Гид

Майните на процессоре? Читайте про настройку Cpuminer-Opt.

Настройка для Nicehash

Использовать Nicehash можно двумя способами:

Если используйте саму оболочку Nicehash:

Чтобы сократить количество потоков при майнинге, вам необходимо выполнить следующие шаги:

Пример использования 8 потоков:

Пример снижения интенсивности использования процессора:

Настройка для Nvidia (CUDA) и AMD (opencl)

На этом настройка батника завершена. Ниже мы предоставим команды для более расширенной конфигурации работы программы.

Настройка файла config.json

Откройте файл config.json в любом текстовом редакторе и отредактируйте атрибут pools следующим образом:

Вот полная строка кода:

Запустив программу, будет отображена следующая информация:

Подробная настройка xmrig proxy

Итак, при каких обстоятельствах следует использовать xmrig-proxy?

Руководство по использованию xmrig-proxy:

Измените параметр «url»: на ваш IP:

Затем запустите xmrig, как показано ниже:

Вы увидите все майнеры в сети:

Как проверить хешрейт

В майнере XMrig proxy доступна проверка хешрейта, результатов и статуса видеокарт. При этом используется два способа просмотра данных:

В окне майнера нужно нажать следующие клавиши:

MSR Mod

– это аппаратные предварительные выборки для решения фундаментальных проблем производительности. Алгоритм RandomX обращается к памяти случайным образом, поэтому предварительные выборки просто не работают.

Если вы используете последнюю версию XMRig с правами root (Linux) или администратора (Windows), майнер автоматически настраивает все регистры MSR. Если все в порядке, майнер получил все необходимые привилегии и ваш процессор их поддерживает, вы увидите строку, как показано ниже, в журнале майнера.

При некоторых конфигурациях оборудования / программного обеспечения также необходимо отключить Secure Boot (безопасную загрузку), чтобы мод MSR работал, проверьте проблему № 1891 на github.

XMRig по умолчанию восстанавливает исходные значения MSR при выходе, в любом случае изменения не сохраняются, перезагрузка компьютера всегда сбрасывает любые изменения.

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

Для конфигурации в «randomx» объекте доступны 2 варианта:

Параметр rdmsr :
Используйте «rdmsr»: false для отключения восстановления начальных значений MSR при выходе.

Параметр WRMSR :
«wrmsr»: true (по умолчанию) включить функцию MSR или «wrmsr»: false отключить функцию MSR.

WRMSR номер:
«wrmsr»: 15 Доступно только для Intel. Значение по умолчанию 15 для Intel в целом хорошо, но может не лучше, подробности см. в обсуждении № 1433 на github.

WRMSR массив:
Очень продвинутый формат, для точной настройки. Используйте с осторожностью. Предустановленные значения, поставляемые с майнером:

Так же производительность сильно повышает параметр “блокировка страниц в памяти” (“huge pages”).

Еще увеличивает производительность параметр CPU Affinity.

— это программное закрепления (привязка) к ядрам процессора конкретных вычислительных процессов.

Пример команды в батнике:

Параметры команд

Важно понять перед прочтением списка, что этот перечень команд указан в двух вариантах: длинное имя команды и ее короткий синоним.

Вам нужно выбрать и использовать только один вариант команды:

Например, если указаны две команды:

Мы используем либо:

Пример использования короткой команды:

Пример использования длинного варианта команды:

Обзор

Программа использует плагин CUDA для майнера. Используется в отдельных версиях программы. Он не обязателен, а потому не включен в основное программное обеспечение. Более того, данная технология требовательная к версии компилятора, а потому часто возникают конфликты с кодом работы процессора.

Не запускается?

От правильной настройки майнера зависит эффективность добычи цифровых токенов. Если же ввести параметры не верно, то программа просто не запустится или выдаст ошибку. Однако, при использовании расширенной конфигурации: настройки параметров работы видеокарты, частоты ядра и т.д., то появляется риск более быстрого износа оборудования.

Читайте также:  резак пропановый или ацетиленовый какой лучше

Если запуск все еще невозможен, посетите тематические форумы. Большинство проблем уже обсуждены и имеют решение. Главное правильно введите запрос в поисковую систему. Также вы можете посмотреть всю информацию на GitHub. Там же посоветоваться с другими пользователями.

Альтернативы

Существуют ли альтернативы? Да, например:

Майнеры для видеокарт:

Алгоритмы

Имя Объем памяти Версия Описание Примечания
cn/upx2 128 KB 6.12.0+ CryptoNight-Femto (variant of CryptoNight V2 for Uplexa).
argon2/chukwav2 1 MB 6.4.0+ Argon2id (Chukwa v2). CPU only
cn/ccx 2 MB 6.2.0+ Conceal (CCX)
kawpow 6.0.0+ KawPow (Ravencoin) GPU only, not supported by xmrig-proxy
rx/keva 1 MB 5.9.0+ RandomKEVA (RandomX variant for Keva).
astrobwt 20 MB 5.8.0+ AstroBWT (Dero).
cn-pico/tlo 256 KB 5.5.0+ CryptoNight-Pico (Talleo).
rx/sfx 2 MB 5.4.0+ RandomSFX (RandomX variant for Safex).
rx/arq 256 KB 4.3.0+ RandomARQ (RandomX variant for ArQmA).
rx/0 2 MB 3.2.0+ RandomX (Monero).
argon2/chukwa 512 KB 3.1.0+ Argon2id (Chukwa). CPU only
argon2/ninja 256 KB 3.1.0+ Argon2id (NINJA) CPU only
rx/wow 1 MB 3.0.0+ RandomWOW (RandomX variant for Wownero).
cn/fast 2 MB 3.0.0+ CryptoNight variant 1 with half iterations.
cn/rwz 2 MB 2.14.0+ CryptoNight variant 2 with 3/4 iterations and reversed shuffle operation.
cn/zls 2 MB 2.14.0+ CryptoNight variant 2 with 3/4 iterations.
cn/double 2 MB 2.14.0+ CryptoNight variant 2 with double iterations.
cn/r 2 MB 2.13.0+ CryptoNightR (Monero’s variant 4).
cn-pico 256 KB 2.10.0+ CryptoNight-Pico.
cn/half 2 MB 2.9.0+ CryptoNight variant 2 with half iterations.
cn/2 2 MB 2.8.0+ CryptoNight variant 2.
cn/xao 2 MB 2.6.4+ CryptoNight variant 0 (modified).
cn/rto 2 MB 2.6.4+ CryptoNight variant 1 (modified).
cn-heavy/tube 4 MB 2.6.4+ CryptoNight-Heavy (modified).
cn-heavy/xhv 4 MB 2.6.3+ CryptoNight-Heavy (modified).
cn-heavy/0 4 MB 2.6.0+ CryptoNight-Heavy.
cn/1 2 MB 2.5.0+ CryptoNight variant 1.
cn-lite/1 1 MB 2.5.0+ CryptoNight-Lite variant 1.
cn-lite/0 1 MB 0.8.0+ CryptoNight-Lite variant 0.
cn/0 2 MB 0.5.0+ CryptoNight (original).

Вирус или программа безопасна?

XMRig это не вредоносная программа. Это легальная программа для майнинга криптовалют.

Поэтому некоторые антивирусные сканеры считают программу вредоносной потому, что антивирусы не делают различий между намеренным (сознательным) майнингом и скрытым майнингом (когда криптовалюта добывается без вашего ведома). В последнем случае нужно удалить программу из системы.

Как удалить?

Если вирус недавно начал действовать, то зайдите в папку system и посмотрите на дату изменения файлов, найдете. В ручную удаляется так: Shift+Delete.

Если программу вы скачивали сами, то просто удалите ее как обычно вы удаляете файлы.

Частые проблемы

У пользователей время от времени могут возникать различные проблемы с майнером. Одни связаны с драйверами, другие с особенностями алгоритма.

Проблема low difficulty share говорит о неправильно подобранном порте пуле. Задания приходят с ошибочной сложностью. Подбирайте пул на основании вашего оборудования. Учтите, что для фермы с высокопроизводительными картами, средне производительными процессорами и просто одной карты или домашнего компьютера выдаются разные категории портов.

Ошибка cryptonight_extra_cpu_finak говорит о перегрузке системы. Следовательно, нужно уменьшить размер потоков и блоков.

Выводы

В данной статье мы рассмотрели, как работать с этой программой. Она имеет весьма обширные параметры для оптимизация процесса добычи криптовалют.

Источник

Что за зверь CPU Affinity и с чем его едят при майнинге

При майнинге на процессоре продвинутые майнеры используют возможность тонкой настройки параметров вычислений путем установки параметра CPU Affinity. Это дает потенциальную возможность выиграть дополнительные 1-2 процента в хешрейте.

Некоторые не знают значение данного параметра и для чего он служит. Между тем, правильная установка CPU Affinity на майнинг ригах с достаточно мощными процессорами способна обеспечить небольшое увеличение хешрейта при майнинге на процессоре при сохранении необходимой для основного майнера и системы вычислительной мощности CPU.

Рассмотрим подробнее, что такое параметр CPU Affinity, как он влияет на распределение ресурсов процессора и производительность майнинга.

Что такое CPU Affinity и как этот параметр влияет на режим работы процессора?

CPU Affinity – это программная привязка (закрепление) к ядрам процессора определенных вычислительных процессов. Такая привязка отдает ресурс назначенного пользователем физического ядра процессора нужному сервису/программе (например, майнеру), минуя автоматические (неэффективные) алгоритмы, использующиеся операционной системой. Ручная установка параметра AFFINITY прекращает прыгание исполняемой программы по ядрам процессора, которое бесполезно расходует машинное время и кэш CPU.

Читайте также:  при какой температуре запекать рульку в духовке в рукаве и сколько времени

Закрепление ядра CPU позволяет увеличить время работы процессора по выполнению задач выбранной программы, в том числе майнера и тем самым увеличить хешрейт.

При включенной по умолчанию технологии Hyper Threading (HT) число доступных ядер удваивается за счет виртуализации. В этом случае нужно задействовать только физические ядра (нужно включать affinity для нечетного номера соответствующего виртуального потока).

Как на практике настроить параметр CPU Affinity для предоставления ресурсов процессора выбранным приложениям?

При настройке параметра CPU Affinity нужно выделать ресурсоемким приложениям физические, а не виртуальные ядра процессора. Например, при использовании процессора с двумя физическими и 4 виртуальными ядрами (0,1,2,3) нужно задействовать либо ядра 0, 2, либо 1 и 3

Для этого в батнике майнера для параметра cpuaffinity указывается маска с числовым значением, задающим номера ядер процессора, которые будут использоваться при проведении вычислений.

Эта опция будет полезна на практике только на достаточно производительных процессорах, у которых есть свободные мощности. На CPU с одним ядром и парой виртуальных потоков включение опции CPU Affinity ничего хорошего не даст.

Не стоит выделать майнеру все имеющиеся физические ядра при одновременном майнинге на видеокартах и выполнении других приложений на компьютере, так как это может привести к подвисаниям или уменьшению хешрейта на GPU.

В bat-файле майнера под Windows задействование 5 физических ядер из общего количества 6 реальных и 12 виртуальных будет выглядеть так:

Операционные системы Windows и Linux иногда по-разному нумеруют реальные и виртуальные ядра, поэтому для одинаковых процессоров значения CPU-affinity в этих системах могут быть разными.

Для удобства пользователя далее приведены значения аргумента cpu-affinity для Linux и Windows для вставки в батник xmrig в зависимости от количества использующихся физических ядер.

Таблица значений CPU affinity в соответствии с задействованными физическими ядрами процессора для Windows:

Физические ядра CPU

0 (1/1 Core/Thread) 0x1 Intel Atom 0 (1/2 Core/Thread) 0x0 Pentium 0,1 (2/2 Cores/Threads) 0x3 0,2 (2/4 Cores/Threads) 0x5 0,2,3 (3/3 Cores/Threads) 0x7 0,2,3 (3/6 Cores/Threads) 0x15 AMD 0,1,2,3 (4/4 Cores/Threads) 0xF Intel i5-4670,
Intel I3-8100 1,2,3 0x7 Включение 3 ядер для CPU 4/4 Cores/Threads 0,2,4,6 (4/8 Cores/Threads) 0x55 Intel i7-7700 2,4,6 0x15 Включение 3 ядер для CPU 4/8 Cores/Threads 0,2,4,6,8 0x155 0,2,4,6,8,10 0x555 Intel i7-8700K 2,4,6,8,10 0x155 Включение 5 ядер для CPU 6/12 Cores/Threads 0,2,4,6,8,10,12 0x1555 0,2,4,6,8,10,12,14 0x5555 0,2,4,6,8,10,12,14,16 0x15555 0,2,4,6,8,10,12,14,16,18 0x55555 0,2,4,6,8,10,12,14,16,18,20 0x155555 0,2,4,6,8,10,12,14,16,18,20,22 0x555555 0,2,4,6,8,10,12,14,16,18,20,22,24 0x1555555 0,2,4,6,8,10,12,14,16,18,20,22,24,26 0x5555555 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28 0x15555555 0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30 0x55555555

Чтобы посчитать значение аффинити для Windows для своей конфигурации задействования ядер, нужно использовать написать в бинарном виде включенные/выключенные ядра/потоки (единица означает включение ядра) с последующей конвертацией в шестнадцатиричный формат.

Вычисление значения cpu-affinity на примере процессора Intel Core i7-8700K (6/12 ядер/потоков)

Чтобы найти значение affinity для процессора Intel Core i7-8700K:

Полученное число 555 записываем в формате 0x555 и проставляем в батник майнера в качестве аргумента параметра cpu-affinity.

Если задействуется 5 ядер из 6, то берем значение cpu-affinity для 0,2,4,6,8-х ядер, равное 155.

Пример батника для xmrig с использованием параметра cpu-affinity для задействованных 5 ядер:

Значения cpu-affinity для Linux

В Linux ядра/потоки считаются по другому, ниже приводятся значения CPU affinity для Linux.

Таблица значений CPU affinity в соответствии с задействованными физическими ядрами процессора для Linux:

Физические ядра CPU (Cores)

Значение cpu-affinity для майнера xmrig

0 0x1 0,1 0x3 0,1,2 0x7 0,1,2,3 0xF 0,1,2,3,4 0x1F 0,1,2,3,4,5 0x3F 0,1,2,3,4,5,6 0x7F 0,1,2,3,4,5,6,7 0xFF 0,1,2,3,4,5,6,7,8 0x1FF 0,1,2,3,4,5,6,7,8,9 0x3FF 0,1,2,3,4,5,6,7,8,9,10 0x7FF 0,1,2,3,4,5,6,7,8,9,10,11 0xFFF 0,1,2,3,4,5,6,7,8,9,10,11,12 0x1FFF 0,1,2,3,4,5,6,7,8,9,10,11,12,13 0x3FFF 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 0x7FFF 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 0xFFFF

Закрепление ядер за процессом штатными средствами Windows

В Windows закрепить ядра процессора за программой/сервисом можно с помощью диспетчера задач (ctrl+alt+del, задать сходство):

В открывшемся окне выбирают задействованные ядра (нужно выбирать одно физическое из пары реальное-виртуальное ядро):

Что на практике дает включение опции CPU Affinity при майнинге?

Активация функции CPU Affinity при майнинге на процессоре дает прирост хешрейта до 3-4% на алгоритмах типа RandomX. На других algo прирост может быть более существенным.

Хешрейт без включенной опции CPU Affinity на 4 потоках процессора Intel I7-7700 при майнинге Safex на алгоритме RandomSFX составляет примерно 2500 h/s (Windows 8.1):

С включенным режимом CPU Affinity выдает хешрейт около 2620 h/s (на 4 процента больше):

Источник

Читайте также:  какой камень подходит льву женщине по гороскопу в год змеи

Настройка Processor Affinity с помощью PowerShell

По умолчанию запущенное в Windows приложение может выполняться на любом из ядер процессора, а распределением процессорных мощностей занимается операционная система. Обычно она неплохо справляется с этой задачей, но иногда все же требуется ручная настройка. Для этой цели в Windows есть функционал Processor Affinity, который позволяет осуществлять привязку вычислительных процессов к ядрам процессора.

При помощи этого функционала можно указать сходство (affinity) процесса с определенными ядрами процессора, тем самым привязав процесс к этим ядрам. Если вы установили для процесса привязку к определенным ядрам, то он будет выполняться только на этих ядрах.

В какой ситуации может потребоваться настройка Processor Affinity:

• Для ограничения потребления ресурсов конкретным приложением. Самый простой и эффективный, хотя и достаточно грубый способ ограничить для приложения потребляемую процессорную мощность.
• Для обеспечения совместимости. К примеру требуется запустить устаревшее приложение, которое работает некорректно в многопроцессорной системе.
• Для повышения производительности. В случае с ресурсоемкими приложениями (напр. рендеринг видео) иногда рекомендуют выделить программе отдельные ядра процессора. Это гарантирует, что ядра будут всегда доступны для выполнения задачи и не будет задержек, связанных с выбором и переключением между ядрами.

Проще всего осуществить привязку с помощью диспетчера задач (Task Manager). Для этого надо на вкладке Details (Подробности) найти нужный процесс, кликнуть на нем правой клавишей мыши и в контекстном меню выбрать пункт Set Affinity (Задать сходство).

В открывшемся окне буду показаны все имеющиеся ядра процессора. Те, которые процесс может использовать, отмечены галочкой. Для изменения просто убираем галочку с ненужных ядер и жмем ОК.

Можно осуществлять привязку и с помощью PowerShell. Для примера запустим Блокнот (notepad) и выведем его текущее значение командой:

Get-Process notepad | fl ProcessorAffinity

А теперь давайте разберемся, откуда взялась цифра 15. Дело в том, что ProcessorAffinity представляет из себя битовую маску (bitmask), где каждому биту соответствует ядро процессора. Если для ядра отмечено сходство (affinity), то бит выставляется в 1, если нет — то в 0. В нашем случае отмечены все ядра, поэтому маска выглядит так:

CPU3 CPU2 CPU1 CPU0
1 1 1 1

Примечание. При использовании технологии HyperThreading каждое физическое ядро определяется операционной системой как два отдельных процессора (два логических ядра).

Теперь переведем двоичные значения в десятичные и получим:

CPU BitMask Dec
CPU0 0001 1 (2 0 )
CPU1 0010 2 (2 1 )
CPU2 0100 4 (2 2 )
CPU3 1000 8 (2 3 )

Складываем полученные десятичные значения и получаем:

1 + 2 + 4 +8 = 15

Таким образом число 15 означает, что используются все 4 ядра процессора. Если мы хотим это изменить и привязать процесс к определенным ядрам, то складываем только те значения, которые соответствуют этим ядрам. Например, требуется привязать процесс к первым трем ядрам, соответственно значение будет складываться так:

1 + 2 + 4 = 7

Значение получено, теперь осуществим привязку. Для этого выполним следующие команды:

$process = Get-Process notepad
$process.ProcessorAffinity = 7

Проверим результат и в графической оснастке. Как видите, нашему процессу сопоставлены три ядра процессора, как и было задумано 🙂

Таким образом можно осуществить привязку уже запущенного процесса, а можно ли запустить процесс сразу с привязкой к определенным ядрам? Можно, с помощью утилиты командной строки start с ключом /affinity. Например, для запуска блокнота с привязкой к первому ядру достаточно выполнить команду:

start /affinity 1 notepad

Эта команда отлично работает в командной консоли, но если вы попытаетесь выполнить ее при помощи PowerShell, то получите ошибку. Дело в том, что в PowerShell команда start является алиасом для командлета Start-Command, для которого указанные параметры являются недопустимыми.

Поэтому, если все же требуется запуск именно из PowerShell, то команду придется немного видоизменить. Например так:

Указывать значение маски в данном случае надо не в десятичном, а в шестнадцатеричном виде. К примеру десятичное значение 15 в шестнадцатеричном виде будет равно F, а команда для запуска процесса с привязкой к четырем ядрам будет выглядеть так:

И еще, если требуется уточнить количество ядер процессора, то это можно сделать с помощью переменной окружения, командой:

Источник

Сказочный портал