Майнинг

Увеличение производительности видеокарт AMD при майнинге утилитой Memory Tweak

Благодаря стараниям программиста под ником Eliovp, на Bitcointalk и Github доступна утилита amdmemorytweak, позволяющая налету работать с таймингами видеопамяти GDDR5 и HBM2.

amdmemorytweak позволяет добиться лучшей скорости при майнинге на требовательных к памяти алгоритмах на видеокартах AMD. Она является аналогом программы ETHEnlargment Pill, которая значительно увеличивает производительность видеокарт Nvidia с памятью GDDR5X.

Особенно полезна amdmemorytweak для видеокарт серии Vega с памятью HBM2 при майнинге Monero (рост хешрейта около 10%), в том числе после перехода на алгоритм CryptonightR.

12 апреля стала доступна версия 0.1.6 amdmemorytweak, способная работать и в операционной системе Windows на драйверах Adrenaline.

В дополнение к утилите, разгон по частоте и даунвольтинг лучше делать с помощью программы OverdriveNTool по методике, изложенной в статье «Разгон видеокарт АМД для майнинга программой OverdriveNTool».

Для того чтобы уберечься от проблем с нестабильной работой рига при неправильном выставлении таймингов, стоит использовать аппаратные watchdog-и, например, модель версии 9.0, о которой рассказывается в статье «Использование Watchdog v 9.0 для обеспечения бесперебойной работы рига».

Рассмотрим подробнее, как использовать утилиту amdmemorytweak и дает ли ее использование преимущества на видеокартах с прошитым BIOS-ом.

Скачивание и установка программы amdmemorytweak в Windows

Скачать amdmemorytweak можно с Github-а на странице релизов (нужно скачать все четыре файла репозитория):

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

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

Какие команды можно использовать в утилите amdmemorytweak?

В amdmemorytweak можно использовать следующие команды:

—gpu|—i [номера gpu, разделенные запятыми] – выбор задействованных видеокарт;

—current – показывает текущие тайминги;

—help – выводит список доступных команд. При этом нужно использовать батник такого вида:

WinAMDTweak.exe —help

Pause

Скрин батника для вывода помощи в amdmemorytweak:

В батнике для оптимизации таймингов можно изменять следующие значения для видеокарт с памятью GDDR5 (серия RX):

—CL|—cl [значение] – латентность (CAS to data return latency), уменьшать с осторожностью;

—W2R|—w2r [значение] — Write to read turn;

—R2R|—r2r [значение] — Read to read time;

—CCLD|—ccld [значение] – число циклов между записью/чтением из банки A в банку B;

—R2W|—r2w [значение] — Read to write turn;

—NOPR|—nopr [значение] — Extra cycle(s) between successive read bursts;

—NOPW|—nopw [значение] — Extra cycle(s) between successive write bursts;

—RCDW|—rcdw [значение] – число циклов from active to write;

—RCDWA|—rcdwa [значение] – число циклов from active to write with auto-precharge;

—RCDR|—rcdr [значение] – число циклов from active to read;

—RCDRA|—rcdra [значение] – число циклов from active to read with auto-precharge

—RRD|—rrd [значение] – число циклов from active bank a to active bank b;

—RC|—rc [значение] – число циклов from active to active/auto refresh;

—RFC|—rfc [значение] – период автообновления;

—TRP|—trp [значение] — Precharge command period;

—RP_WRA|—rp_wra [значение] — from write with auto-precharge to active;

—RP_RDA|—rp_rda [значение] — from write with auto-precharge to active;

—WDATATR|—wdatatr [значение]

—T32AW|—t32aw [значение]

—CRCWL|—crcwl [значение]

—CRCRL|—crcrl [значение]

—FAW|—faw [значение]

—PA2WDATA|—pa2wdata [значение]

—PA2RDATA|—pa2rdata [значение]

—ACTRD|—actrd [значение]

—ACTWR|—actwr [значение]

—RASMACTRD|—rasmactrd [значение]

—RASMACWTR|—rasmacwtr [значение]

—RAS2RAS|—ras2ras [значение]

—RP|—rp [значение]

—WRPLUSRP|—wrplusrp [значение]

—BUS_TURN|—bus_turn [значение]

Для памяти HBM2:

—CL|—cl [значение]

—RAS|—ras [значение]

—RCDRD|—rcdrd [значение]

—RCDWR|—rcdwr [значение]

—RC|—rc [значение]

—RP|—rp [значение]

—RRDS|—rrds [значение]

—RRDL|—rrdl [значение]

—RTP|—rtp [значение]

—FAW|—faw [значение]

—CWL|—cwl [значение]

—WTRS|—wtrs [значение]

—WTRL|—wtrl [значение]

—WR|—wr [значение]

—WRRD|—wrrd [значение]

—RDWR|—rdwr [значение]

—REF|—ref [значение]

—MRD|—mrd [значение]

—MOD|—mod [значение]

—PD|—pd [значение]

—CKSRE|—cksre [значение]

—CKSRX|—cksrx [значение]

—RFC|—rfc [значение]

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

./amdmemtool -i 0,3,5 —faw 12 —RFC 208

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

./amdmemtool -i 1,2,4 —RFC 43 —ras2ras 176

Перед первым запуском утилиты для оптимизации видеокарт с памятью GDDR5 нужно запустить программу-майнер, чтобы полностью загрузить видеокарту и перевести ее в состояние максимальной производительности, а затем запустить батник amdmemorytweak с параметром —current, чтобы узнать граничные значения таймингов видеопамяти. Видеокарты с памятью HBM2 этой процедуры не требуют.

Нужно учитывать ,что тайминг CL (Cas Latency) значительно влияет на стабильность, поэтому его уменьшение может уменьшить стабильность работы рига.

Как узнать доступные модификации таймингов у памяти видеокарт AMD?

Для изучения состояния карт создают батник (BAT-файл) или сценарий Windows (CMD-файл) с таким содержимым:

WinAMDTweak.exe —current

pause

Для создания исполняемого сценария Windows нажимают правой кнопкой мыши в любом месте и выбирают соответствующую команду:

Затем нажимают на полученном файле правой кнопкой мыши и выбирают команду изменить, а в открытый файл вводят нужные команды.

Скриншот CMD-файла для получения информации о таймингах, использующихся в системе видеокарт AMD:

При запуске этого файла для видеокарты RX470 с памятью GDDR5 Samsung выдается информация такого вида:

При выключенном майнере тайминги другие:

Как правило, производительность памяти увеличивается при уменьшении задержек. Таким образом, можно попробовать уменьшить значения таймингов и применить их утилитой amdmemorytweak.

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

Запуск утилиты amdmemorytweak для увеличения хешрейта видеокарт

При майнинге Монеро на видеокарте MSI Vega 64 с памятью HBM2 производства Samsung использование таймингов --rp 10 --rc 44 --rfc 300 --rrd 3 --rcdrd 12 --rcdwr 5 дает хешрейт 2130 h/s (в стоке 1950).

Такой результат достигнут в программе teamredminer 0.4.3 при частоте ядра 1150 Mhz и памяти 1100 Mhz. В системе были установлены драйвера версии 18.6.1 пор методике, изложенной в статье «Правильная установка драйверов GPU для майнинга».

При майнинге эфира на Vega 64 достигается скорость 50-52 mh/s при частоте ядра 1100 MHz. При этом используется батник такого вида:

WinAMDTweak.exe --CL 16 --RAS 30 --RCDRD 14 --RCDWR 14 --RC 44 --RP 14s --RRDS 3 --RRDL 5 --RTP 5 --FAW 20 --CWL 7 --WTRS 4 --WTRL 9 --WR 16 --WRRD 1 --RDWR 19 --REF 17550 --MRD 8 --MOD 15 --PD 8 --CKSRE 10 --CKSRX 10 --RFC 244

Запуск amdmemorytweak для увеличения хешрейта видеокарт с памятью GDDR5 производится с помощью команд в батнике (BAT или CMD-файле) такого вида (для первых трех карт):

WinAMDTweak.exe -i 1,2,3 --rfc 100,90,100 --RC 55,50,55 и другие значения.

При использовании уже прошитых под эфир видеокарт GDDR5 с разгоном и даунвольтингом в самой программе Phoenix Miner (-cclock 1070 -cvddc 820 -mclock 2010,1950,2010 -mvddc 860) существенного прироста производительности добиться не удалось. Хешрейт RX470 при этих настройках равен 29,2-29,6 Mh/s и игра с таймингами приводила к зависанию системы. Возможно, стоит пробовать менять тайминги GDDR5 на непрошитых картах.

Автоматический запуск amdmemorytweak с загрузкой таймингов

Автоматический запуск amdmemorytweak с загрузкой таймингов в Windows осуществляется таким батником:

@ECHO off
WinAMDTweak.exe --i 0,1,2,3,4 --REF 30
pause

Добавление параметра REF 30 дает прирост до 5% при майнинге эфира на видеокартах АМД с памятью GDDR5. В программе Claymore Dual miner эта опция реализована командой -rxboost 1. С помощью amdmemorytweak эта опция становиться доступной в любом майнере, что пригодится при майнинге не только эфира, но и Монеро, Бим, Грин и прочих монетах.

В папке, откуда запускается этот батник должны быть файлы EIO.dll, IOMap.sys, IOMap64.sys и WinAMDTweak.exe:

Указанные файлы можно скачать на Github (Latest CLI Versions). Файл EIO.dll есть там же по ссылке.

Для изменения параметров памяти видеокарт в оконном интерфейсе можно использовать программу AMDMemoryTweakXL.

Консольная версия программы amdmemorytweak работает более надежно и не требует установки Microsoft NetFramework. Кроме того, ее автозапуск легко сделать обычным батником.

Заключение

Появление утилиты amdmemorytweak дает возможность немного увеличить доход владельцев карт АМД при добывании криптовалют, использующих алгоритмы, требовательные к памяти. Это касается, в основном владельцев карт с памятью HBM2 (в будущем и HBM). При использовании правильно прошитых Bios видеокарт АМД с памятью GDDR5 утилита существенного прироста скорости не дает. Есть смысл задействовать amdmemorytweak на таких непрошитых картах.

В любом случае использовать утилиту стоит «без фанатизма» и страховать риги аппаратными вотчдогами, например, «Watchdog v 9.0». При этом, до нахождения оптимальных таймингов, лучше не добавлять батник amdmemorytweak в автозагрузку.

Полезные ссылки:

2 комментария

  • Иван

    Поковырял прогу для RX570 с памятью хьникс тайминги стали применятся без подвисания, но результат при одинаковых таймингах с прошитой и не прошитой, хешрейт на не прошитой падает. Эффекта не дает. Использовал стоковые параметры видика. То ли прога эффекта не дает то ли что то упустил может у кого получится лучший результат. Страпы под видик на дефолтных настройках core 1250 mem 1650 —cl 18 —rc 68 —rrd 5 —rcdr 23 —rcdra 23 —rcdwa 16 —rcdw 16 —rfc 164 —trp 21 —rp_rda 25 —rp_wra 55 —t32aw 0 —faw 0 —rasmactwr 37 —rasmactrd 32 —actrd 11 —ras2ras 116 —rp 29 —wrplusrp 39

  • cryptoprofi

    Большое спасибо за проявленный интерес! Ваше мнение очень важно для авторов, спасибо!

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

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