Падает скорость видеокарты при майнинге

Что делать при резком падении хешрейта на видеокарте при майнинге?

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

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

Скриншот майнера nanominer при майнинге ETC с DAG, равным 2.591 Gb на видеокарте Radeon RX5500XT с 8 Гб памяти (хешрейт всего 1.5 mh/s, при нормальной работе — порядка 28-29 mh/s):

«Чудовищная» скорость генерации DAG на проблемной видеокарте:

Такая проблема может возникнуть в любой операционной системе, как Windows, так и Linux (включая HiveOS) и связана со сбросом частот видеокарты на базовые. Проверка текущих настроек видеокарты, которую можно произвести разными способами, показывает, что видеокарта работает на очень низких частотах памяти/видеопроцессора.

Скриншот видеокарты AMD Radeon RX5500XT, которая отказывается работать не только в разогнанном, но и в базовом режиме:

Выдача информации о состоянии видеокарты в программе amdcovc (видно, что частота памяти сброшена на 500 МГц):

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

На алгоритме kawpow проблемная видеокарта продолжает «бастовать», саботируя проведение вычислений:

Казалось бы (временным) спасением может стать переключение на майнинг криптовалют, которые не требуют высокой производительности памяти, например, на Equihash 192, но и здесь возникают ошибки, вплоть до «вылета» карты.

Отвал видеокарты в программе lolminer с ошибкой Stuck device detected, invoking emergency script:

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

Существуют следующие способами решения проблемы сброса частот памяти на проблемной видеокарте:

  • Проверить лимит виртуальной памяти, выставленный на компьютере. Проблемы могут появиться при малом файле подкачки в Windows или при некорректной установке значения vm.swappiness в Linux.
  • Включить в карту AMD монитор/эмулятор.
  • Произвести сброс настроек разгона и даунвольтинга с последующей перезагрузкой. Перед этим нужно отключить сохранение сеанса. В окружении xfce это делается командой:
  • Удалить/выключить программы разгона и проверить, восстановилась ли нормальная работоспособность карты.
  • Осуществить полное удаление и чистую установку драйверов.
  • Переустановить видеокарту в другой слот PCI-E или райзер (заменить USB-кабель передачи данных).
  • Обновить систему (Linux) командой:
  • Перенести видеокарту на другой риг/переустановить операционную систему/перейти на другое ядро.
  • Прошить корректный BIOS видеокарты.

Иногда наиболее простым решением проблем с некорректной работой видеокарт является чистая установка системы. Исходя из практического опыта, это помогает после обновления работающей системы xubuntu 18.04 на версию 20.04. После такого апдейта видеокарты стали вести себя аномально, сбрасывая частоты, при установке драйверов возникали ошибки, связанные с установкой пакета amdgpu-dkms:

Типичные способы устранения такой ошибки

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

Источник

Скорость майнинга, принятая, отклоненная скорость и шары

Здесь мы объясним, как работает майнинг, как работает NiceHash, как вы получаете оплату и как вы можете проверить, полностью ли оптимизирована ваша система для майнинга и работает ли она максимально надежно, и самое важное — как читать графики NiceHash. Это также быстро научит вас, как оценивать другие майнеры и сравнивать их с NiceHash QuickMiner.

Майнинг криптовалют на NiceHash (очень упрощенная версия)

Майнинг криптовалют — это ничто иное, как выполнение вычислений значений хэшей — это односторонняя математическая функция, вычисляющая выход Xa из входа Ia. К каждому входу Ia также добавлено особое число, состоящее из двух частей: Ns (nonce-сервер) и Nm (nonce-майнер). Ваш майнер получает job (задание) с сервера NiceHash, содержащее Ia и Ns. Ваш майнер выбирает (обычно просто выполняя итерацию ++1) Nm для каждого вычисления, а затем вычисляет выход в соответствии со следующей формулой:

Xa = HASH(Ia + Ns + Nm)

Xa — это очень большое число. Если это число ниже чем Ta (target (цель) — также предоставлено в задании), ваш майнер находит шару, а соответствующий Nm отправляется на NiceHash, как proof-of-work (доказательство о выполнении работы). Это доказывает, что ваш майнер на самом деле выполнил работу для нахождения подходящего nonce. Поскольку ХЭШ — это односторонняя функция, для майнеров нет другого варианта, кроме многочисленных проб nonce. Майнинг со скоростью 60 MH/s означает, что ваш майнер пробует 60 миллионов nonce в секунду и выполняет 60 миллионов вычислений ХЭШ в секунду.

Когда вашему майнеру повезет найти подходящий nonce Nm, он запаковывает его вместе с идентификатором задания и отправляет их на сервер NiceHash в виде шары. Затем NiceHash может:

  • принять вашу шару, как валидную,
  • отклонить вашу шару, как неправильную — неверное вычисление или
  • отклонить вашу шару, как устаревшую — она пришла слишком поздно.
Читайте также:  Бпиф сбер ответственные инвестиции

Принятые шары

Найденный вами nonce — правильный (без ошибок в вычислениях), и шара поступила на сервер вовремя (не слишком поздно). Обычно вы можете заметить принятые шары, когда консольное окно майнера сообщает вам об этом, например:

net | daggerhashimoto | Share #114 accepted (31 ms)

Вы получаете определенное фиксированное количество BTC за эту шару. Количество BTC, которым оценивается шара, зависит от двух факторов:

  • насколько трудной была работа и
  • сколько на данный момент платят покупатели.

Мы объясним только первый, поскольку второй — часть конфиденциального, патентованного алгоритма NiceHash. Трудность работы определяется Ta, который вычисляется из (1 * algo_const)/Da . Da — это сложность. Чем выше сложность, тем ниже число Ta, и майнеру труднее (занимает больше времени) угадать подходящий Xa, который был бы меньше чем Ta. По факту, если мы увеличим сложность в 2 раза, число Ta уменьшится в 2 раза и ваш майнер как следствие найдет только половину тех шар, которые он нашел бы раньше. У каждого задания есть определенный Da (определяемый сервером NiceHash). Когда ваш майнер находит шару для задания, у которого удвоен Da, у этой шары удвоен также фактор трудности, а шара будет оцениваться в два раза выше, чем шара, найденная для задания с Da x1.

NiceHash регулирует Da (сложность) динамически, в соответствии со скоростью вашего майнера:

  • Если ваш майнер более быстрый и отправляет шары чаще ожидаемого, NiceHash увеличивает сложность.
  • Если ваш майнер более медленный и редко отправляет шары, тогда Nicehash уменьшает сложность.

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

У нас есть 6 ригов со следующими скоростями майнеров: 587 MH/s, 409 MH/s, 261 MH/s, 215 MH/s, 214 MH/s and 121 MH/s. Общая скорость всех ригов — 1807 MH/s.

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

1800 MH/s это 20 MH/s. Когда мы вычтем 20 MH/s из нашей общей скорости рига 1807 MH/s, мы получим 1787 MH/s. Наш график показывает 1791 MH/s, что на 4 MH/s выше — это можно отнести к удаче на протяжении этого периода времени. Это также говорит нам, что выбранный майнер сообщает о скорости майнинга честно и верно.

ВАЖНО! Принятая скорость на NiceHash — самый важный график. Он говорит вам о том, какая фактическая производительность вашего майнера. Если ваш график показывает намного меньшие значения по сравнению с тем, что ваш майнер показывает в консоли, вас обманывают! Хорошо известно, что некоторые майнеры с комиссией разработчику искусственно раздувают значения скорости в консоли, чтобы привлечь больше пользователей, и в большинстве случаев они не вычитают скорость, которая уходит разработчику. Таким образом у вас может сложиться впечатление, что производительность вашего майнера отличная, скорость высокая, но на NiceHash график принятой скорости будет говорить о другом. Значение имеет не то, какую скорость сообщает ваш майнер, а то, что вы видите на графике принятой скорости на NiceHash — вы получаете оплату непосредственно в соответствии с этим!

Менеджер ригов NiceHash отображает:

  • локальную прибыльность и
  • фактическую прибыльность.

Локальная прибыльность — это скорость, сообщаемая вашими майнерами, умноженная на текущую прибыльность. Она более стабильна, но может быть ошибочной, если майнер искусственно раздувает значения скорости.

Фактическая прибыльность рассчитывается путем умножения принятой скорости на текущую прибыльность. Вот почему она называется фактической — такую оплату вы фактически получаете.

Отклоненные шары — шара выше цели — share above target

Когда вы получаете этот тип отклоненных шар, это означает, что ваш майнер предоставил неверные вычисления и, как следствие, неверный результат. Обычно это происходит, если вы слишком сильно разгоняете VRAM — память больше не стабильна и происходят ошибки. Конечно, вы не получаете оплату за отклонения любого типа. У вас не должно быть много отклонений этого типа (возможно, периодически одна-две шары). В менеджере ригов вы можете отключить отображение всех других шар и проверить только средний процент отклоненных шар типа target.

В нашем примере у нас было всего несколько отклоненных шар типа target, поэтому на графике только два выступа, а средний процент так низок, что при округлении до двух десятичных знаков он показывает 0.00%. Это говорит о том, что наши риги настроены правильно.

Отклоненные шары — задание не найдено (устаревшие) — job not found (stale)

Этот тип отклонений неизбежен. Он зависит от многих факторов, включая латентность вашей сети к выбранному серверу NiceHash. Вот почему важно выбирать сервер с низшей латентностью, как описано здесь. Он также зависит от выбранного вами программного обеспечения для майнинга. Программное обеспечение, отправляющее старые шары для неверных заданий, будет генерировать устаревшие шары. Майнерам важно быстро переключаться и начинать работать над новым заданием, когда старые задания устарели. Excavator выполняет это задание за приблизительно 1-2 миллисекунды при использовании современных процессоров.

Наш процент отклоненных шар — 0.97%. Это значит, что мы теряем около 1% от возможного дохода. В случае с общей скоростью приблизительно 1800 MH/s это означает, что мы теряем около 18 MH/s .

Но почему задания все же устаревают? Ваш майнер выполняет работу для блокчейна — новый блок появляется каждые несколько минут или секунд. Когда это происходит, предыдущее задание устаревает и больше не может быть использовано. В Excavator, когда у задания есть суффикс (clean), все предыдущие задания устаревают.

И в чем смысл шар? Шара с экстремально высокой сложностью, которая выше, чем сложность сети блокчейна, — это решение, создающее новый блок на блокчейне.

Источник

Оптимизация потребления видеокарт Nvidia при майнинге

Видеокарты Nvidia GTX 1050, 1060, 1070 и 1080, а также новые модели серии RTX отличаются простотой настройки майнинга, стабильностью работы и хорошим хешрейтом.

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

Это особенно важно при майнинге на алгоритме Ethash (используется у эфира, эфира классик, UBIQ, Metaverse, Expanse и многих других монет).

Как уменьшить энергопотребление видеокарт Nvidia при майнинге

При настройке видеокарт нужно понимать, что каждые сто мегагерц частоты на ядре видеокарты при майнинге на алгоритме Ethash дают прирост/снижение хешрейта на уровне около 0,5 Mh/s. Для хорошей скорости майнинга эфира достаточно иметь частоту ядра GPU на уровне 1100-1200 мегагерц.

Каждая видеокарта имеет индивидуальные возможности по разгону и даунвольтингу. Это зависит от качества кристаллов в ядре GPU и памяти. Для уменьшения потребления на ядре GPU Нвидиа программным способом можно использовать две популярных утилиты:

Наилучшие результаты по снижению энергопотребления дает программа NvidiaInspector, которая позволяет понизить вольтаж ядра ниже 800 милливольт, в то время как MSI Afterburner без дополнительных ухищрений позволяет его снизить только до 800 милливольт. Снижение вольтажа ядра до 0,8 В уменьшает потребление на примерно 20%, а температуру видеокарты на 4-5 градусов при одном и той же скорости кулеров.

Тем не менее иногда нужно применять MSI Afterburner либо одновременно обе программы (для разных видеокарт своя программа), так как некоторые видеокарты (например, P106-100 майнинг эдишн от MSI) не управляются NvidiaInspector.

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

Как оптимизировать энергопотребление с помощью MSI Afterburner

Понизить энергопотребление на видеокартах Nvidia с помощью MSI Afterburner можно двумя способами:

  1. С помощью снижения TDP — лимита энергопотребления (power limit);
  2. С помощью ручного выставления постоянного напряжения и частоты на ядре GPU на кривой (curve) зависимости напряжения и частоты. В просторечии этот способ называют «курвой» от созвучного английского названия графика – curve.

Снижение лимита энергопотребления (Power Limit) видеокарт Nvidia в MSI Afterburner

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

Для снижения потребления нужно уменьшать напряжение на ядре GPU до такого значения, когда еще обеспечивается стабильная работа майнера. Для алгоритмов, не требовательных к частоте ядра (Ethash, который раньше назывался Dagger Hashimoto), для снижения потребления можно сильнее уменьшать частоту ядра (до примерно 1100 МГц), что позволит еще больше снизить энергопотребление.

Для других алгоритмов может потребоваться повышенная частота ядра. Как правило, большинство видеокарт Nvidia могут выдержать увеличение частоты ядра на примерно 150 мегагерц (+150 Mhz), а памяти – до +500 мегагерц и выше (если повезет с чипами памяти).

Скриншот программы MSI Afterburner при downvolting видеокарты P106-100 (MSI GTX1060 6 Gb mining edition) с помощью понижения до 65% лимита по энергопотреблению (достигнуто напряжение на ядре 800 мВ):

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

Значение 100% Power Limit дает самый большой хешрейт при высоком потреблении, выделении тепла и шума от кулеров. Выставление этого значения в промежутке от 50 до 75% позволяет установить оптимальное напряжение на ядре при незначительном снижении хешрейта. Напряжение на ядре и его частота при этом будет автоматически колебаться для сохранения выставленного значения лимита, что будет отражаться и на хешрейте.

Скриншот Phoenix Miner при майнинге эфира в соло при 65% TDP:

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

Даунвольтинг видеокарт Nvidia с помощью «курвы»

При этом способе выставляют желаемый разгон видеопамяти ползунком в основном окне MSI Afterburner, оставляют 100% Power Limit, перемещают до упора влево частоту ядра (-400Mhz) и нажимают на график в виде трех столбцов в строке частоты ядра (Core Clock):

Появится окно, позволяющее регулировать зависимость частоты и напряжения на ядре видеокарты:

В появившемся окне перетягивают начало графика вольтажа ядра и частоты от значения 800 мВ до значения частоты на пару мегагерц выше максимальных значений графика:

Затем нажимают кнопку применить (Apply) в окне MSI Afterburner:

Стабильно выставленный график зависимости частоты и напряжения на ядре видеокарты Nvidia в программе MSI Afterburner (напряжение на ядре – 800 мВ при частоте ядра 1550 МГц) выглядит следующим образом:

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

Скриншот MSI Afterburner для видеокарты P106-100 со значением курвы 800 мВ при частоте ядра 1544 МГц:

Скриншот MSI Afterburner для видеокарты P106-100

Настройка скорости кулеров в MSI Afterburner

В MSI Afterburner также можно выставить график зависимости скорости кулера от температуры. Для этого нажимают на кнопку шестеренки в MSI Afterburner, выставляют нужную форму графика вращения кулеров в зависимости от температуры, и не забывают активировать кнопку автоматического применения этих значений (кнопка Auto должна стать зеленой).

Скриншот MSI Afterburner при настройке скорости вращения кулеров:

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

Управление потреблением видеокарт Nvidia программами Nvidia Inspector и NVIDIA Profile Inspector

Главным преимуществом NvidiaInspector является возможность установки вольтажа GPU Core менее 800 мВ, что значительно уменьшает прожорливость видеокарт.

Обе эти программы требует наличия в операционной системе установленного NET Framework 2 и выше.

Для того, чтобы управлять напряжением ядра видеокарт компании Нвидиа с помощью утилит Нвидиа Инспектор и Нвидиа Профайл инспектор, на нужных GPU желательно отключить другие утилиты управления видеокартами, в том числе MSI Afterburner.

Если на видеокартах включен режим CUDA — Force P2 State (максимальной производительности), его выключают с помощью программы NVIDIA Profile Inspector . При постоянно включенном режиме P2 нужно использовать в два раза большие значения разгона ядра и видеопамяти. Если этот режим вручную не выключался, то обычно по умолчанию он включен.

Скриншот NVIDIA Profile Inspector в разделе управления режимом CUDA — P2 State:

Кроме того, для увеличения хешрейта в программе NVIDIA Profile Inspector можно подкорректировать значение power management mode, выставив его в Prefer Maximum Performance. Для экономии электроэнергии это значение можно поставить в optimal или adaptive.

Скриншот NVIDIA Profile Inspector в разделе управления режимом Performance:

Программа Nvidia Inspector позволяет осуществить следующие действия:

  1. Понизить напряжение на ядре для экономии электричества.
  2. Разогнать ядро видеокарты для повышения хешрейта.
  3. Установить нужное значение скорости вращения кулеров видеокарт для поддержания нужной температуры (желательно до 60 градусов, что минимально изнашивает электронные компоненты видеокарты).

Чтобы использовать NvidiaInspector, нужно создать пустой текстовый файл в той же папке, где она установлена. В его текстовой части нужно вставить следующие строки (для рига из 5 видеокарт, считаются от 0 до 4):

SET GPU0=-setMemoryClockOffset:0,0,380 -setBaseClockOffset:0,0,190 -setFanSpeed:0,%FAN% -lockVoltagePoint:0,%VOLT% -setTempTarget:0,0,%TEMP%

SET GPU1=-setMemoryClockOffset:1,0,380 -setBaseClockOffset:1,0,130 -setFanSpeed:1,%FAN% -lockVoltagePoint:1,%VOLT% -setTempTarget:1,0,%TEMP%

SET GPU2=-setMemoryClockOffset:2,0,510 -setBaseClockOffset:2,0,100 -setFanSpeed:2,%FAN% -lockVoltagePoint:2,%VOLT% -setTempTarget:2,0,%TEMP%

SET GPU3=-setMemoryClockOffset:3,0,490 -setBaseClockOffset:3,0,-50 -setFanSpeed:3,%FAN% -lockVoltagePoint:3,800000 -setTempTarget:3,0,%TEMP%

SET GPU4=-setMemoryClockOffset:4,0,380 -setBaseClockOffset:4,0,100 -setFanSpeed:4,50 -lockVoltagePoint:4,650000 -setTempTarget:4,0,%TEMP%

«nvidiaInspector.exe» %GPU0% %GPU1% %GPU2% %GPU3% %GPU4%

Затем меняют расширение этого файла в BAT, создают ярлык этого файла и помещают его в папку автозагрузки рига. Обычно это C:\Users\имя пользователя\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

Для настройки пакетного файла для конкретного майнинг рига в нем устанавливают следующие параметры:

  • TIMEOUT /T 25 – время в секундах для задержки запуска NvidiaInspector (в данном случае 25 секунд);
  • SET FAN=44 – скорость вращения вентиляторов видеокарты, в процентах (здесь – 44%);
  • SET VOLT=660000 – напряжение на ядре видеокарты, в милливольтах (в данном случае 660 мВ);
  • SET TEMP=60 – целевая температура видеокарты (60 градусов);
  • SET GPU0 – параметры для первой видеокарты (нумерация начинается с нуля);
  • -setMemoryClockOffset:0,0,380 – разгон по памяти GPU (в данном случае +380 МГц). Обычно память Hynix может разгоняться до 400-550 Mhz, Micron – до 500-700 мегагерц, а Samsung – до 650-850 Mhz;
  • -setBaseClockOffset:0,0,190 – разгон по частоте ядра (здесь +190 МГц). Для обеспечения высокого и стабильного хешрейта частоту видеокарт лучше выставлять не менее 1100 МГц (для некоторых видеокарт, в том числе серии 1080 это значение может быть большим). Напряжение можно контролировать в окне Nvidia Inspector (или в программах HWinfo, Aida64), которую для этого запускают путем двойного клика на ее файл.

Скриншот окна утилиты Nvidia Inspector, которая управляет напряжением на ядре (Voltage = 650 мВ), частотой памяти и скоростью вентиляторов (для установки нужных значений используется запуск BAT-файла с нужными параметрами):

  • -setFanSpeed:0,%FAN% — частота вращения вентиляторов (в данном случае для нулевой по счету видеокарты равна значению, выставленному в SET FAN=);
  • -lockVoltagePoint:0,%VOLT% — вольтаж на ядре (в данном случае для нулевой видеокарты равна значению, выставленному в SET VOLT=);
  • -setTempTarget:0,0,%TEMP% — целевая температура (в данном случае для этой видеокарты равна значению, выставленному в SET TEMP=).

Скриншот BAT-файла для использования NvidiaInspector для рига с 6-ю видеокартами:

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

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

Источник

Оцените статью