Page load

Майнинг на процессоре и видеокарте: сравнение прибыльности, актуальность и настройки

Майнинг на процессоре и видеокарте: сравнение прибыльности, актуальность и настройки

Майнинг это добыча криптовалюты на компьютере. Отсюда возникает закономерный вопрос — можно ли майнить на центральном процессоре. Это такой же вычислительный ресурс, как видеокарта. Но стоит ли оно того? Короткий ответ «Да», правильный — «не всё так просто».

Что такое процессор (CPU) и как на нем майнить?

Центральный процессор занимается выполнением кода, вроде JavaScript во вкладке браузера, подгружает видео на YouTube и запускает программы с жесткого диска. Иногда в CPU устанавливают интегрированное графическое ядро, чтобы он отрисовывал «Косынку» и выводил изображение страницы Фейсбука, но не больше.

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

Так, четыре потока могут выполнять четыре задачи за один цикл. Современные процессоры, вроде Ryzen 3 3100 или Intell I5 7400 способны решать 2 и даже 3 задачи одним ядром за один цикл. Это как если бы вы писали реферат, заваривали кофе и жонглировали одновременно. Называется такой род вычислений «Параллелизм» или «Суперскалярность», когда выполняется N-задач, но одновременно друг-другу.

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

Майнинг криптовалют на видеокарте

Видеокарта — графический ускоритель, он же GPU, он же визуальный акселератор, он же лучший друг геймера. Занимается отрисовкой волос на голове у Геральта и кнопок «Скачать», проживает в системнике.

Но что делает видеокарты крутыми? Вспоминаем определение «Параллелизма» и историю. В начале 70-х процессоры были медленные, они могли лопнуть от попытки отрисовать картинку и ЭВМ ограничивались работой в текстовом режиме. В 80-х годах компьютерные инженеры поняли, что отрисовку изображения придется отделить от CPU и придумали графические ускорители.

Так в 1987 году появился «MDA» от IBM, или Monochrome Display Adapter, который поддерживал работу с изображением 720 на 320 точек. Выглядело жутко, цветов не было, зато был текст — но рабочее время процессора теперь выделялось на более важные задачи.

Графика в 1980-х годах на ПК

Вот так выглядела графика в 1980-х годах на ПК — консоли в то время были чуть лучше и умели в цвет. Значительно позже появились видеокарты, вроде RX 580, которые умеют отрисовывать красивые текстуры в играх.

Наглядную иллюстрацию разницы работы процессора и видеокарты показывали еще Адам Сэвидж и Джейми Хайнеман из «Разрушителей Легенд» в далеком 2009 году на выставке Nvidia.

Разберем на примере RX580 — сколько задач за одну секунду она способна решать, хотя бы теоретически?

Внутри видеокарты есть два типа ядер — шейдерные и текстурные. К ним идут вспомогательные модули вывода рендера и обобщение «вычислительные блоки». В майнинге нас интересуют шейдерные ядра, которые созданы, чтобы выполнять сложные задачи параллельно, а не последовательно, как в CPU.

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

Теперь математика: за один такт RX580 решает, условно, 2034 задачи. Тактовая частота видеокарты 1.2 Ггц и 1.3 Ггц при ускорении, или 1 200 000 000 циклов в секунду. Так, за одну секунду видеокарта решает 2 440 800 000 000 уравнений, это два с половиной триллиона. На практике же, если учесть оптимизацию выполняемого кода, видеокарта выдает 6 терафлопс, или 6 000 000 000 000 решений за секунду.

Что такое 6 триллионов? Давайте добавим контекста. Как писал Яков Перельман в своей замечательной книге «Числовые Великаны»: «Одним триллионом кирпичей можно было бы покрыть все материки равномерным сплошным пластом высотой почти с четырёхэтажный дом». Найти эту цитату можно на странице 152, издания 1954 года. В наших с вами телах содержится 30 триллионов клеток, учитывая кровяные тельца, кожу, кости, мышцы, мозг и другие ткани. Вот где-то посредине сидит RX580, которая решает шесть триллионов уравнений за секунду.

Майнинг на процессоре

Криптовалюту можно добывать путем решения математических формул, называется этот процесс PoW-майнинг. Решать уравнения можно и на бумаге, как это делал Кен Шифф в своем видеоролике.

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

Подключим процессор, берем за условие, что один поток может решить две задачи. Так, за один цикл CPU с четырьмя потоками решит восемь задач. Допустим, речь идет о процессоре с тактовой частотой 3.4 Ггц. Выходит, наш условный процессор выполняет 3 400 000 000 циклов за секунду.

Умножаем на количество операций за цикл и получаем 24 000 000 000 миллиарда решений за одну секунду. Впечатляюще. Это прибыль Джеффа Безоса в 2020 году на фоне пандемии.

Но есть одно «Но». Ядер всего четыре, пусть они и быстрые, но их четыре и они не оптимизированы для сложных параллельных вычислений. А видеокарте нормально, она за секунду решает в шесть раз больше решений, чем понадобится кирпичей для обкладки всех материков мира четырёхэтажками.

Прибыльность майнинга на CPU

Вот только есть криптовалюта, специально оптимизированная для добычи на процессоре — Monero. Её майнинг на процессорах оправдан, правда это должны быть многопоточные ЦПУ, вроде Ryzen 9 5900X или Ryzen 7 1700x.

Ниже — данные по прибыльности за Декабрь 2020 года, они могли устареть, пока вы читали статью. Поэтому мы прикрепим ссылки на актуальную прибыльность для каждого процессора.

Данные по прибыльности за Декабрь 2020 года

На скриншоте — хешрейт Ryzen 9 5900X, который составляет 12 кило-Хешей в секунду. Согласно счётчику Cryptocompare это 27 долларов в месяц на Монеро или 328 в год. Актуальная прибыль для R9 5900X на Монеро.

Хешрейт Ryzen 9 5900X

А если майнить на процессоре Threadripper 3990X?

Threadripper 3990X

Самый крутой процессор на рынке, Threadripper 3990X со 128 потоками, будет приносить три доллара в сутки на Monero или 1125 USD в год, при стоимости в 4500 USD.

Курс по добыче для TR 3990X

О Celleron или Pentium даже не говорим, там профит исчисляется десятыми долями центов. Но о майнинге Monero подробнее в отдельной статье.

А RX580 будет приносить по доллару в день на пуле Hashalot.io уже сегодня. Присоединяйтесь!