На сегодняшний день RandomX является новейшим и наиболее прибыльным алгоритмом с поддержкой майнинга на процессорах (CPU).
Он был разработан специально так, чтобы противостоять Асикам, FPGA и даже сделать видеокарты менее прибыльными, по сравнению с процессорами. Как следует из названия, алгоритм основан на произвольном выполнении кода и методах, требующих большого объема памяти.
Основная идея монеты с майнингом на процессорах – улучшить децентрализацию, привлекая как можно больше разных людей в майнинг. Вы правильно поняли, разные люди, а не горстка людей с огромным количеством майнинг ферм.
Пока что эта монета Monero, на алгоритме RandomX, вероятно, самая прибыльная для майнинга, среди остальных монет добывающихся при помощи процессора.
Любой пользователь ПК может быстро и легко установить майнер (программу по добычи криптовалюты) и использовать свой компьютер для добычи монет в свободное время. Начать майнинг Monero RandomX очень просто, все что Вам нужно – это скачать программы для майнинга, подойдут следующие:
Программа |
Серия |
Настройка и загрузка |
XMR-STAK-RX |
CPU, Amd, Nvidia |
Скачать и настроить |
SRBMiner |
Скачать и настроить |
|
Xmrig |
CPU, Amd, Nvidia |
Скачать и настроить |
Сделать майнинг ферму специально для RandomX довольно сложно. Собрать прибыльную ферму на GPU намного проще, чем на CPU, основная причина в том, что возможно подключить несколько GPU к одной материнской плате, в то время как каждому CPU, как правило, нужны своя материнская плата, память и жесткий диск. Установки CPU более громоздкие, более дорогие и дают меньше профита, чем ферма на GPU.
Однако есть способы сделать майнинг на процессорах прибыльным. Позвольте нам показать вам три способа получения прибыли с помощью майнинга RandomX.
Особенности алгоритма Random X
Алгоритм RandomX был разработан как anti-ASIC algo программистами под никами Monero by tevador, hyc, vielmetti, antanst and SChernykh специально для криптовалюты Монеро на компьютерах/устройствах со следующими архитектурами:
- x86 (32-бит, от младшего к старшему (little-endian);
- x86-64 (64-бит);
- ARMv7+VFPv3 (32-bit);
- ARMv8 (64-бит);
- PPC64 (64-bit).
Благодаря использованию ряда новшеств, этот algo будет использоваться и в других блокчейнах, например, у проектов Wownero (начиная с релиза 0.6, упрощенный алгоритм с названием RandomWOW), Arweave и других.
В зависимости от объема задействованной оперативной памяти, на алгоритме RandomX возможен майнинг в двух режимах: Fast Mode (нужно не менее 2080 MB оперативной памяти) и Light Mode (ОЗУ размером не менее 256 Мб).
Fast Mode предназначен для «чистого» майнинга, а Light Mode – для валидации блоков на узлах с небольшими аппаратными возможностями, например, на одноплатных ARM-компьютерах (Rock64 и т.д.).
Эффективный майнинг (Fast Mode) на алгоритме RandomX задействует более 2 гигабайт оперативной памяти, что осложняет маскировку майнера при несанкционированном использовании ресурсов компьютера, а также практически полностью исключает из процесса майнинга слабые компьютеры и прочие устройства (интернет вещей) с небольшой вычислительной мощностью (типа роутеров, смартфонов и т.д.).
Браузерный майнинг (web-майнинг) также практически невозможен из-за высокой требовательности к памяти и отсутствия полноценной поддержки вычислений с плавающей запятой в Javascript и WebAssembly.
При вычислениях на алгоритме RandomX используются числовые операции, соответствующие стандарту IEEE 754: сложение, вычитание, умножение, деление и вычисление квадратного корня. Применяются фрагменты кода хеш-функций от алгоритмов Argon2d, Blake2b.
Алгоритм RandomX написан на языке программирования C++ и для его использования в системе должны быть установлены соответствующие библиотеки. При вычислениях используется виртуальная машина, выполняющая микропрограммы по специальным инструкциям, включающим переменные различных типов.
Блок-схема виртуальной машины Рандом X:
Часть инструкций может быть интерпретирована в процессорных командах сходу (как ассемблерные программы), а часть выполняется как программы с 256-битной криптографической хеш-функцией Blake2b.
Хешрейт процессоров на алгоритме Random X
Большинство процессоров, выпущенных компаниями Intel и AMD с 2011 года должны осуществлять эффективный майнинг на алгоритме RandomX. Самую лучшую производительность будут показывать 64-bit CPU, обладающие следующими функциями:
- поддержка вычислений с плавающей запятой (стандарт IEEE 754);
- поддержка инструкций AES на аппаратном уровне (команды AES-NI для архитектуры x86, криптографические расширения для ARMv8)
- не менее 16 кБ кеша уровня L1, 256 Кб кеша L2 и 2 мегабайта кеша L3 cache для каждого потока майнинга;
- поддержка больших страниц памяти (large memory pages);
- не менее 2.5 Гб свободной оперативной памяти (RAM) для одного узла NUMA;
- может понадобиться поддержка многоканальной передачи данных в оперативной памяти (multiple memory channels):
- память типа DDR3 имеет лимит примерно 1500-2000 H/s на один канал (в зависимости от частоты и таймингов);
- память DDR4 лимитирована примерно 4000-6000 H/s на один канал.
Для достижения максимального хешрейта на алгоритме RanomX при майнинге на процессоре нужно правильно выбирать количество потоков (T) и включить поддержку больших страниц памяти.
В зависимости от того, включена поддержка больших страниц памяти или нет при майнинге, различаются разновидности алгоритма RanomX по скорости майнинга на CPU (соответственно «Fast mode» и «Light mode»).
При майнинге желательно наличие поддержки инструкций AES в процессоре на аппаратном уровне. Майнить на старом процессоре без поддержки команд AES также возможно, хоть и с меньшей скоростью, включив их эмуляцию в программном режиме.
В следующей таблице приведены данные по хешрейту различных процессоров на алгоритмах CryptoNight-R и Random X (Fast и Light Mode), h/s: