Монеты

RandomX: как устроен алгоритм, который любит процессоры

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

Обновлено 5 ноября 2026 · 6 мин чтения

Какую проблему он решал

До конца 2019 года Monero работала на алгоритме CryptoNight. Он тоже задумывался для обычных компьютеров, но со временем под него появились ASIC: чипы, в которых один алгоритм зашит прямо в кремний. Сообщество отвечало плановыми хард-форками, слегка меняло правила и превращало такие устройства в бесполезное железо.

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

Перед запуском код проверили четыре независимые команды аудиторов, а 30 ноября 2019 года сеть Monero перешла на новый алгоритм.

Что происходит при расчёте одного хеша

Алгоритм вроде SHA-256 у Bitcoin всякий раз повторяет одну и ту же фиксированную последовательность действий. RandomX каждый раз собирает новую работу:

  1. Из данных блока и подобранного числа получается начальное значение.
  2. По нему генерируется случайная программа из 256 инструкций для виртуальной машины: целочисленная арифметика, дробные числа, условные переходы, чтение и запись памяти.
  3. Программа на лету переводится в машинный код вашего процессора и выполняется 2048 проходов подряд.
  4. Результат становится основой для следующей программы. Всего в цепочке их восемь.
  5. Итог сжимается криптографической функцией в один хеш, который сравнивается с целью сети.

Цепочка здесь важнее всего. Без неё производитель мог бы сделать чип, который пропускает неудобные программы и считает только удобные. Следующая программа зависит от результата предыдущей, поэтому выбросить звено нельзя: чтобы получить хеш, приходится выполнить всё.

Работа с дробными числами и аппаратным шифрованием AES тоже выбрана не случайно. Эти блоки уже есть в каждом современном процессоре, а разработчику отдельного чипа пришлось бы воссоздавать их заново.

Три области памяти

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

ОбластьРазмерГде находитсяЗачем нужна
Scratchpad2 МБ на потокКэш L3, мелкие участки в L1 и L2Рабочая область программы, сюда идут самые частые обращения
ДатасетОколо 2 ГБ на все потокиОперативная памятьБольшой блок данных для быстрого режима, читается в случайном порядке
Кэш проверки256 МБОперативная памятьЛёгкий режим: узел сети проверяет блоки без полного датасета

Майнеру нужен быстрый режим с датасетом. Лёгкий режим намного медленнее, зато обычный узел сети проверяет хеши без лишних двух гигабайт. Задача остаётся дорогой для того, кто ищет блок, и посильной для того, кто его проверяет.

Данные к тому же не вечны. Ключ, из которого строится датасет, меняется каждые 2048 блоков, в сети Monero это примерно раз в трое суток. Записать готовый результат один раз и пользоваться им дальше не получится.

Почему ASIC и видеокартам тут неудобно

В биткоине ASIC выигрывает за счёт того, что тысячи крошечных блоков повторяют одну операцию. У RandomX такой операции нет. Эффективному чипу пришлось бы уметь дробную арифметику, переходы, быстрый кэш на мегабайты и работу с памятью, и в итоге он стал бы очень похож на обычный процессор, который индустрия шлифует десятилетиями.

Видеокарте мешает другое. Она сильна там, где тысячи простых ядер выполняют один код над разными данными. Здесь у каждого потока своя программа с ветвлениями и свой быстрый scratchpad на 2 МБ, и параллелизм карты почти не помогает. Считать она умеет, но уступает процессору и в скорости, и в расходе энергии.

Устойчивость не означает полной защиты. Специализированные устройства под RandomX на рынке появлялись, но разрыва на порядки, как в биткоине, они не создали. Общая разница подходов разобрана в статье ASIC или видеокарта.

Большие страницы памяти

Процессор ищет данные в памяти через таблицу адресов и держит под рукой маленький быстрый справочник этих записей. Обычная страница памяти в Windows занимает 4 КБ, и на датасет в 2 ГБ их нужно больше полумиллиона. Справочник постоянно промахивается, а потоки теряют время.

Большая страница занимает 2 МБ, поэтому записей нужно в сотни раз меньше. На RandomX такая разница заметна: майнеры с большими страницами обычно показывают более высокий хешрейт.

В Windows для этого учётной записи нужно право «Блокировка страниц в памяти». Его задают в локальной политике безопасности, которой нет в редакции Home, а после изменения требуется перезагрузка. Некоторые майнеры, например XMRig, умеют выставлять его сами при запуске от администратора. На компьютере с небольшим объёмом памяти большие страницы могут не выделиться: длительная работа без перезагрузки дробит память на мелкие куски.

Что всё это значит при выборе процессора

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

Проверим правила на моделях из калькулятора. У Ryzen 7 5800X и 7700X по 32 МБ кэша на 16 потоков, ровно по норме. У версий X3D кэша втрое больше при тех же потоках. У шестнадцатиядерного Ryzen 9 7950X кэша вдвое больше, но и потоков тоже. Доход в таблице показан как прогноз до комиссии и электричества:

ПроцессорХешрейтПотреблениеПрогноз / месПрибыль при $0.10Окупает до, $/кВт·ч
Ryzen 7 5800X8,5 KH/s110 Вт$9.98$2.06$0.13
Ryzen 7 5800X3D9 KH/s100 Вт$10.57$3.37$0.15
Ryzen 7 7700X10,5 KH/s110 Вт$12.33$4.41$0.16
Ryzen 7 7800X3D10 KH/s90 Вт$11.75$5.27$0.18
Ryzen 9 7950X22 KH/s170 Вт$25.84$13.60$0.21

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

X3D рывка не даёт, шестнадцать ядер дают. Это средние оценки, на реальный результат влияют память, охлаждение и настройки BIOS. Гибридные процессоры Intel со смесью разных ядер ведут себя сложнее, для них есть отдельное сравнение Ryzen или Intel.

Покупать процессор ради майнинга мы не советуем. Разумнее оценить тот, что уже стоит у вас: в FlowHash он майнит Monero как раз на этом алгоритме, а чего ждать по доходу и температурам, рассказано в статье о майнинге на процессоре.

Сколько считает ваш процессор на RandomX

В калькуляторе собраны хешрейт и потребление Ryzen и Core, а прогноз можно проверить при своём тарифе.

Частые вопросы

RandomX используется только в Monero?

Нет, сам алгоритм и его варианты применяют и другие сети. Monero остаётся самой известной из них, поэтому его часто называют алгоритмом Monero.

Сколько оперативной памяти нужно для RandomX?

Быстрому режиму нужно чуть больше 2 ГБ свободной памяти под датасет и по 2 МБ на поток. Если параллельно запущены браузер и другие программы, объём всей памяти должен быть с запасом.

Почему хешрейт падает, когда я работаю за компьютером?

Браузер и другие программы занимают те же ядра, кэш L3 и память. Для майнера это потеря, а для вас обычная ситуация: тяжёлую задачу лучше запускать, поставив майнинг на паузу.

Нужно ли вручную настраивать большие страницы в FlowHash?

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

Можно ли считать RandomX на видеокарте?

Такие майнеры существуют, но карта уступает процессору и в скорости, и в расходе энергии. Логичнее оставить RandomX процессору, а для карты выбрать сеть, рассчитанную на GPU.

Читайте также

Монеты6 мин чтения

Что такое Monero (XMR) и почему её майнят на процессоре

Как Monero прячет отправителя, получателя и сумму, почему биржи её сторонятся и чем она удобна для майнинга на CPU.

Читать →
Процессоры7 мин чтения

Ryzen или Intel: какой процессор лучше майнит Monero

Почему 24 ядра Intel уступают 16 ядрам Ryzen, зачем RandomX столько кэша и во что обходится каждый лишний ватт.

Читать →
Процессоры6 мин чтения

Майнинг на процессоре в 2026: сколько приносит CPU и стоит ли его включать

Сколько приносит Monero на Ryzen и Intel, какие процессоры майнят лучше, сколько съедает электричество и безопасно ли это — с таблицей по 14 моделям.

Читать →
Основы6 мин чтения

ASIC или видеокарта: чем отличаются и что выбрать для дома

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

Читать →