Майнинг

Майнинг на видеокартах Nvidia Tesla серии K на алгоритме Ethash

Если бы наши солдаты понимали, из-за чего мы воюем, нельзя было бы вести ни одной войны.

Фридрих Великий

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

Даже старые видеокарты Тесла, выпущенные на ядре Кеплер (Tesla K80, K40c, K40m, K40s, K40st, K40t, K20Xm, K20m, K20s, K20c, K10, K8 и аналоги из серии Quadro K), имеют солидный запас памяти даже по современным меркам. Например, графический ускоритель Nvidia Tesla K40 (и ее аналог Nvidia Quadro K6000) имеет 12 GB VRAM, а модель K80 – целых 24 гигабайта GDDR5-памяти.

Несмотря на то, что перечисленные видеокарты выпускались много лет назад, производительность их подсистемы памяти вызывает уважение. В связи с этим ускорители Tesla K теоретически могут использоваться при майнинге ETH и в настоящее время.

К сожалению, их использование во многих случаях осложняется тремя факторами:

  • необходимость доработки системы охлаждения для видеокарт, предназначенных для серверных корпусов;
  • отсутствие поддержки архитектуры Kepler (Compute Capability 3.5) в большинстве современных майнеров;
  • слабая производительность видеоядра и проблемы с его разгоном.

Как охладить видеокарту Tesla, не имеющую собственных вентиляторов?

Решить проблему с охлаждением графического ускорителя без собственной активной системы охлаждения довольно легко с помощью установки производительной турбины, например, шарикоподшипникового вентилятора Gdstime (скорость вращения 3200RPM, воздушный поток 37 CFM):

Мощности такого вентилятора хватает с лихвой для охлаждения Nvidia Tesla K40M, работающей на полной мощности, поэтому для уменьшения шума можно поставить регулируемый DC-DC преобразователь по линии питания, при необходимости снижая вольтаж и уровень шума.

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

Для охлаждения чипов памяти на них можно наклеить радиаторы с помощью термоскотча:

Слабые турбинные вентиляторы для охлаждения (например, EVERCOOL FOX-2) использовать не стоит, так как они не справляются с охлаждением:

Newest Pci Fan Fox-1/2 Chassis Turbo Fan Graphics Card Auxiliary Cooling Pc  (12cm Pci Baffle) Chassis Exhaust Fans Cooling - Fans & Cooling - AliExpress

Какие майнеры можно использовать для майнинга на видеокартах Tesla с архитектурой Kepler?

Для запуска графических ускорителей Tesla K нужно установить соответствующие драйвера, включить в BIOS режим Above 4G Decoding/Resizable BAR.

Кроме того, на компьютере нужно иметь как можно больший объем ОЗУ (например, для одной Tesla K желательно иметь 24GB RAM), в противном случае видеокарты могут не определяться или не будут полноценно работать. На старых компьютерах могут возникнуть проблемы с определением профессиональных видеокарт, подключенных через райзер.

Выбор майнеров для видеокарт с архитектурой Kepler достаточно скуден. К ним относятся:

  • xmrig;
  • xmrstack;
  • ccminer и клоны, например, ccminer-xaya;
  • miniz (к сожалению, некоторые версии, например, miniZ 1.8y3 работают с такими картами, как Nvidia GT710, но не видят Tesla K);
  • ethminer;
  • verthashminer;
  • Phoenix Miner и некоторые другие программы.

Так как видеокарты Tesla имеют большой объем видеопамяти, логично было бы использовать их при майнинге Ethereum и других монет на алгоритме Ethash.

К сожалению, результаты, которые показывает большинство майнеров на этих видеокартах плачевны (например, Phoenix Miner обеспечивает хешрейт порядка 1-2 MH/s). Более полно раскрыть потенциал профессиональных, но капризных GPU можно, используя ethminer и оптимизированные программы/команды запуска. Например, добавление параметра

-M 100

в командную строку для запуска ethminer позволяет оценить производительность Nvidia Tesla K40 на сотой эпохе, где эта видеокарта показывает хешрейт порядка 14-20 MH/s (в зависимости от используемой материнской платы, объема ОЗУ и разгона). К сожалению, эта скорость на практике (из-за проблем в драйверах) достижима только при майнинге монет с маленьким DAG.

Пример простого батника (скрипта) для запуска ethminer 0.19.0-alpha0 на алгоритме Ethash на пуле zergpool (с автоматической конвертацией намайненного в LTC):

ethminer -U -R -P stratum+tcp://wallet:c=LTC,worker,refcode=81de238596774683dd427a9d57bae6af@ethash.mine.zergpool.com:9999 --api-port -3333 --HWMON 2 --tstart 55 --tstop 65 --report-hashrate --cu-devices 0

Для справки:

На zergpool при майнинге можно настроить автоматическую конвертацию добытых монет в удобную криптовалюту, например, лайткоины. Комиссия пулу на zergpool равна всего 0.5%, ее можно дополнительно снизить на 0.2%, добавив в батнике в поле пароля код refcode=81de238596774683dd427a9d57bae6af

Пример батника для майнинга в программе cpuminer на zergpool на процессоре (алгоритм yescryptR16):

cpuminer --algo yescryptR16 --url=stratum+tcp://yescryptR16.mine.zergpool.com:6333 --user=кошелек --pass=c=LTC,worker,refcode=81de238596774683dd427a9d57bae6af --threads=3 --cpu-priority 0 --max-temp=65

Хешрейт Nvidia Tesla K40 в Windows 10LTSC с драйвером 472.12 (16GB ОЗУ) при майнинге ethash-монет (эпоха 100) составляет около 12 MH/s:

Программа GPU-Z при майнинге показывает полную загрузку ядра видеокарты при слабой нагрузке (56%) на контроллер памяти:

Как видно из приведенного выше изображения, потенциал подсистемы памяти графического ускорителя раскрывается лишь наполовину, упираясь в слабую производительность ядра, работающего на смехотворной частоте 745 МГц. Интересно отметить, что при установке Nvidia Tesla K40 на компьютер с 32 ГБ оперативной памяти, ее хешрейт возрос до 17-18 MH/s.

Для сравнения, на алгоритме cn_gpu в программе xmrstack 2.10.8 Nvidia Tesla K40 выдает около 450 H/s, что также связано со слабым GPU.

Разгон видеокарт Tesla K для майнинга

Чтобы поднять производительность любой видеокарты, нужно увеличить ее частоты ядра и памяти. В Windows для выжимания соков из видеокарт Nvidia можно использовать программы nvidiainspector или MSI Afterburner, а в Linux – возможности nvidia-smi.

К сожалению, программу nvidiainspector использовать не получается, так как она не видит Nvidia Tesla K40, показывая (в данном случае) только видеокарту, использующуюся для вывода изображения (Nvidia GeForce GT710):

MSI Afterburner ведет себя чуть лучше, но на практике не может управлять частотой ядра:

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

Разгон по памяти на +240 МГц увеличивает хешрейт на 0.5 MH/s:

В Linux ситуация чуть лучше, здесь можно управлять частотами ядра, памяти Power Limit, но на хешрейт это особо не влияет. Наоборот, почему то в xubuntu 18.04 производительность Tesla K40 на ethash даже ниже, чем в Windows 10LTSC.

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

В программе ethminer можно поиграться с оптимизацией, используя расширенный синтаксис командной строки, например, следующие:

--cu-grid-size INT [1 .. 131072], по умолчанию программой используется значение 8192;

--cu-block-size UINT {32,64,128,256} Default = 128;

--cu-parallel-hash UINT {1,2,4,8} Default = 4

--cu-streams INT [1 .. 99] Default = 2

--cu-schedule TEXT Default = 'sync' (может быть 'auto', 'spin', 'yield' или 'sync').

Для выжимания соков из видеокарт Nvidia можно использовать калькулятор занятости CUDA ядер (CUDA Occupancy Calculator). Здесь есть интересная информация по возможностям видеокарт Nvidia разных поколений, например, для видеокарт с версией SM 3.5 (Kepler 2.0) можно использовать следующие значения CUDA-параметров:

Заключение

Учитывая достаточно слабую оптимизацию заброшенного разработчиками майнера ethminer, можно сделать предположение, что видеокарты Tesla могут обеспечить и более высокий хешрейт, соответствующий производительности их VRAM. Для этого нужно в полной мере задействовать их вычислительные CUDA-возможности, здесь есть над чем поработать…

P.S. После модернизации BIOS на видеокарте Tesla K40 при майнинге Ethereum был достигнут хешрейт 19-20 MH/s (при майнинге монет с небольшим DAG). Подробнее в статье Модернизация BIOS видеокарт Nvidia на архитектуре Kepler для майнинга на примере Tesla K40.

Один комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *