- Начинаем майнить в Linux
- Что имеем и что потребуется добавить
- Установка графической среды (если необходимо)
- Установка драйверов
- Вариант №1. С сайта NVidia.
- Вариант №2. Из репозитория xorg-edgers
- Настройка разгона карт
- Установка майнера
- Итого
- P.S. А = автоматизация
- Об установке драйверов для видеокарт AMD в Ubuntu
- Какие драйвера нужны для майнинга на видеокартах АМД в ubuntu
- Подготовка к установке драйверов АМД в Убунту
- Установка драйверов AMD в ОС ubuntu
- Корректировка загрузчика ядра GRUB
- Отключение загрузки устаревшего драйвера Radeon в ядре Linux
- Установка пакета AMD APP SDK
- Как проверить версию установленных драйверов AMD в ubuntu?
Начинаем майнить в Linux
Хотим поблагодарить наших читателей за проявленный интерес к теме майнинга. В предыдущей статье Altcoin: просто взять и намайнить мы начали раскрывать потенциал наших услуг в сфере майнинга и рассматривали один из самых простых способов настройки платформы, а именно с использованием операционной системы Windows. В этой статье продолжим раскрывать тайны и тонкости настройки, но уже на базе Linux.
Сейчас существует большое количество готовых сборок Linux, как правило, на базе Ubuntu, с достаточно простой установкой и управлением. Самостоятельными дистрибутивами назвать их сложно, хоть они и имеют собственный дизайн и команду разработчиков. Собой они представляют обычную Ubuntu 16.04 с установленной графической оболочкой, как правило OpenBox или LXDE, набором драйверов и ассортимента программ-майнеров. Некоторые из них имеют собственные централизованные панели управления «шахтой». Приведем несколько самых известных и распространенных:
- ethOS — платный дистрибутив LiveCD, который можно развернуть на USB-флешку или диск. Стоимость одной лицензии $39. Имеется приложение для мониторинга в Google Play .
- HiveOS — сборка на базе Ubuntu, которую можно отнести к shareware — условно-бесплатное ПО, потому что предоставляет бесплатный мониторинг и управление только трех ригов. Все последующие по $5 за штуку.
- SMOS — также платная сборка. На момент написания статьи проводилась акция по $2 за rig. Имеет несколько версий, в зависимости от серии и поколения используемых видеокарт.
- nvOC — Ubuntu с установленными драйверами Nvidia, необходимыми настройками и набором майнеров. Достаточно отредактировать единый конфигурационный файл, указав номер кошелька и пул, и готово.
- rxOC — аналогичный образ, но уже для карт AMD.
Каждая из указанных сборок имеет как свои плюсы, так и минусы. Как друг относительно друга, так и общие. С точки зрения безопасности они все имеют один, как кажется, большой минус. Они все разработаны кем-то и пользователь, по сути, не имеет полного управления системой из коробки. В принципе, после разворачивания того или иного образа системы можно пройтись по ней с целью поиска заданий в планировщике, открытых портов в фаерволе, подозрительных скриптов и многого другого, но на это может уйти куда больше времени, чем настроить все самостоятельно, чем мы и займемся.
Что имеем и что потребуется добавить
Каждый использует удобную для него версию дистрибутива, мы же все-таки воспользуемся самой распространенной Ubuntu 16.04, которую можно установить автоматикой. Система устанавливается с минимально необходимым для работы сервера набором программного обеспечения.
Для удобства в работе и настройке:
- добавляем дополнительного пользователя и выдаем ему права sudo;
- включаем его в группу sudo.
Установка графической среды (если необходимо)
Для удобства использования можно установить любую среду рабочего стола.
- Стандартная среда устанавливается командой:
- Установка альтернативной среды:
После установки окружения необходимо перезагрузить сервер.
Установка драйверов
Нам потребуются проприетарные драйверы, т.к. только они смогут обеспечить необходимую производительность, функционал и стабильность. В свободных драйверах на данный момент отсутствует полноценная поддержка OpenCL и CUDA , в связи с чем потребуются именно они. Также управление частотами памяти и графического ядра, и скоростью оборотов системы охлаждения доступны только в проприетарных драйверах. Имеются два способа установки — рассмотрим детально оба из них.
Вариант №1. С сайта NVidia.
- Скачиваем драйверы с официального сайта. При выборе операционной системы указываем Linux x64. В перечне также присутствуют версии пакетов в формате .deb, но нас интересует универсальный в формате run:
- Делаем его исполняемым:
- В ходе установки система потребует отключить дисплейный менеджер, что мы сделаем заранее. Сделать это можно так:
Для остановки службы lightdm.service система попросит авторизоваться и ввести пароль текущего пользователя.
Установка проприетарных драйверов, скачанных с сайта производителя, выглядит как сборка их из исходников, для чего необходимо наличие в системе пакетов make и gcc, которые отсутствуют в стандартном наборе пакетов автоматической установки операционной системы.
Вариант №2. Из репозитория xorg-edgers
Репозиторий xorg-edgers содержит последние стабильные версии драйверов NVidia. Его и будем использовать для установки.
- Добавляем xorg-edgers в систему:
- Выполняем обновление репозиториев:
На момент написания статьи последней версией драйверов является 390.48.
Альтернативный способ перезагрузки:
Настройка разгона карт
В Linux нет программ подобных MSI Afterburner, в которых достаточно просто и удобно проводить разгон видеокарт путем перемещения ползунка по шкале. Сейчас многие, вероятно, скажут, что Linux это сложно и для майнинга не подходит, и с одной стороны, будут правы.
Если вас бросает в дрожь от рисованных пингвинов и слов «терминал» или «консоль», страшитесь SSH и apt-get, если вы не любите проводить много времени за клавиатурой, то для ускорения настройки рига лучше использовать Windows, но и присмотреться к данной статье. Не такие и пугающие эти нелетающие компьютерные птицы — достаточно милые и дружелюбные. Далее мы рассмотрим, как же выполнить тонкую настройку видеокарты для достижения хорошей скорости добычи.
Разгон будет осуществляться через драйверы путем изменения необходимых значений рабочих частот и скорости оборотов вентиляторов системы охлаждения. Изначально, изменение всех этих параметров заблокировано. Для разблокировки необходимо выполнить команды, которые откроют нам доступ к управлению картами (кулеры, частоты).
- Очищаем текущую конфигурацию и включаем видеоядра:
- Перезагружаемся:
Далее необходимо внести изменения в конфигурационный файл X-сервера.
Секция примет следующий вид:
Это позволит переключить видеокарты в режим максимальной производительности.
Вместо «x» следует указать необходимые значения разгона и скорости оборотов вентиляторов.
Делаем скрипт исполняемым:
Скрипт создавался для фермы из 4 карт. Для большего количества карт необходимо добавить соответствующее количество строк в коде. Также стоит отметить, что корректно скрипт отработает только при выполнении его из локальной ОС, т.е. при подключении по SSH — нет.
Установка майнера
Для добычи воспользуемся одной из немногочисленных утилит для добычи монет на алгоритме Ethash под названием ethminer. Скачать ее проще всего будет с GitHub:
- Скачиваем архив:
- Распаковываем:
- Копируем полученный файл в /usr/bin для дальнейшей простоты в использовании, т.к. он будет считаться установленной программой:
- Создаем скрипт с именем eth.sh, который будет выполнять запуск майнера в утилите screen:
- Вносим строки:
- Coхраняем файл сочетанием клавиш CTRL + W и отвечаем «Y».
При необходимости можно использовать различные варианты подключения, примеры конфигураций которых можно найти в хэлпе ethminer при помощи флага -h.
Кто-то, вероятно, обратил внимание, что в предыдущей статье указывалось, что карты GTX 1080 не сильно подходят для работы с алгоритмом DaggerHashimoto (Ethash) и их производительность составляла всего 25,5 — 26 Mh/s, в то время как можно достичь 35,65 Mh/s с помощью утилиты OhGodAnETHlargementPill . Чтобы ее установить, необходимо проделать следующие шаги:
- Скачиваем утилиту с GitHub:
- Делаем скачанный файл исполняемым:
- Настраиваем автозапуск:
Данную утилиту можно размещать на запуск через rc.local:
Добавляем следующую строку перед exit 0:
Успешный запуск можно проконтролировать через screen:
screen -x Tabletka.
Итого
Необходимое программное обеспечение и его настройка произведены. Можно добавить все созданные нами скрипты разгона и запуска майнера в автозагрузку, что существенно облегчит эксплуатацию рига. Также можно установить Teamviewer и осуществлять мониторинг и управление удаленно. Как вариант, можно настроить запуск скриптов в screen и осуществлять контроль по SSH. В данном вопросе каждый волен использовать привычный инструмент.
P.S. А = автоматизация
Мы рекомендуем самый простой способ — это воспользоваться стандартным приложением автозагрузки. В LXDE это «Сеансы и запуск».
- В окне приложения проходим на вкладку «Автозапуск».
- Нажимаем «Добавить».
- В появившемся окне указываем имя приложения, описание (при необходимости) и указываем расположение файла скрипта.
- Сохраняем новую запись.
Через консоль утилита вызывается командой xfce4-session-settings. Данный вариант гарантировано запускает скрипты после полной загрузки операционной системы.
Источник
Об установке драйверов для видеокарт AMD в Ubuntu
Операционные системы семейства linux практически всегда стоят на голову выше своих «оконных партнеров» производства Microsoft.
Это связано с тем, что Windows начала свой путь на базе старого и доброго MS-DOS, который долгое время ограничивал ее развитие, а также в связи с нацеленностью разработчиков Винды на получение максимальной прибыли от пользователей, а не на их удобство. Именно поэтому каждый новый дистрибутив Виндовс становится все более громоздким и требует апгрейда железа компьютера.
ОС семейства Linux в большинстве случаев бесплатны и развиваются энтузиастами, нацеленными на достижение максимальной производительности на уже имеющемся оборудовании. Поэтому все дистрибутивы, работающие на ядре Линукса очень стабильны и не требовательны к ресурсам.
БОльшие требования к аппаратному обеспечению для линукс-подобных систем появляются в случае их использования для майнинга. В этом случае особенно важно достичь максимальной производительности подсистемы видео, которая обычно используется для проведения вычислений при майнинге. Кроме того, правильная установка и настройка драйверов для видеокарт в Linux требуется для полноценного использования рабочих станций (домашних компьютеров) под управлением этой системы.
Обычно установка драйверов для видеокарт nvidia в LINUX-подобных системах не вызывает затруднений.
Для видеокарт АМД часто приходится «танцевать с бубнами», но овчинка стоит выделки. Использование правильно настроенных драйверов АМД может дать серьезный прирост производительности видеокарт, например позволяет выжать до 30 mh/s на старых картах типа Радеон R9 290/390 при майнинге на алгоритме Ethash даже на поздних эпохах DAG.
Рассмотрим подробнее особенности работы графической подсистемы с видеокартами amd под управлением ubuntu, а также особенности установки и настройки драйверов для компьютеров с GPU AMD в ОС на основе Убунту.
Тема установки драйверов АМД в linux очень сложная и зависимая от конкретной конфигурации системы, а также версии drivers. Поэтому данная статья не претендует на полноту изложения всех проблем по затронутой тематике, а является попыткой систематизировать какую-то часть информации по работе с драйверами АМД в ubuntu.
Какие драйвера нужны для майнинга на видеокартах АМД в ubuntu
Для работы видеокарт в ubuntu обычно используются такие виды драйверов:
- AMDGPU-PRO — проприетарные, включают драйвера AMDGPU и разные надстройки, в том числе OPENCL, OpenGL 4.5, GLX, VDPAU, Vulkan;
- AMDGPU — открытые фирменные АМД (лучше всего подходят для майнинга пр иусловии дополнительной установки пакетов для OPENCL);
- Mesa — интегрированные в ядро системы Linux открытые драйвера radeon (устаревшие);
- rocm (Radeon Open Compute) — реализация OpenCL от компании AMD, также входят в пакет драйверов AMDGPU-PRO последних версий.
Для майнинга обычно применяется версия AMDGPU-PRO, так как она позволяет в полной мере использовать технологию параллельных вычислений на видеокартах АМД в Линуксе.
Открытые драйвера radeon Mesa не поддерживают в полной мере технологии OpenCl, поэтому не подходят для майнинга. Для работы видеокарт AMD поколения CGN2 (например, r9 290) эти драйвера нужно принудительно отключать.
Фирменные драйвера АМД отличаются между собой поддержкой разных версий OpenCL, а также списком поддерживающихся видеокарт.
Для майнинга в ОС Ubuntu 16.04 лучше использовать фирменные драйвера версии 17.40 (рекомендованные АМД (версия 514569) — для RX-ов или эти (версия 492261) — на AMD R9 290 и других картах поколения CGN2).
Для Ubuntu 18.04 на RX-ах хорошо работают драйвера версии 18.50.
Драйвера версии 17.40 имеют поддержку окружения для высокопроизводительных параллельных вычислений OpenCL версии 1.2, а релиз 18.50 — OpenCL 2.1 (сейчас это последняя версия).
Теоретически OpenCL 2.1 должен обеспечивать более высокую производительность и порядок работы с памятью, но, к сожалению, последние драйвера АМД могут не корректно работать со всеми, даже официально поддерживаемыми картами.
В особенности это касается поддержки еще не очень старых карт с микроархитектурой Graphics Core Next 2. К ним относятся видеокарты с чипами Bonaire и Hawaii: AMD Radeon HD 7790, HD 8770, R7 260/260X, R9 290/290X, R9 295X2, R7 360, R9 390/390X.
Подготовка к установке драйверов АМД в Убунту
Для установки драйверов и всех необходимых пакетов нужно иметь права суперпользователя (root), либо получать эти привилегии, выполняя каждую команду с sudo.
Перед установкой драйверов АМД нужно обновить систему.
Это можно сделать, выполнив команду:
После обновления ОС нужно перезагрузить компьютер:
На некоторых компьютерах с видеокартами поколения CGN2 (например, R9 290) сначала нужно установить драйвера версии 492261 и только потом устанавливать обновления (это возможно сделать только на ubuntu 16.04). В противном случае система крашится.
Установка драйверов AMD в ОС ubuntu
Для установки драйверов amdgpu-pro 17.40 в терминале, открытом из папки с разархивированными файлами драйвера, выполняют команду:
При появлении ошибок доступа к amdgpu-pro-install нужно дать файлу необходимые права командой:
Кроме того, в дополнение к драйверам 17.40, желательно установить компонент ROCM командами:
Этот пакет является платформой для GPU Enabled HPC и UltraScale Computing.
Для установки более новых драйверов (18.0+) используется команда:
Если при установке драйверов возникают ошибки с правами доступа, то нужно попробовать предоставить права выполнения файлу amdgpu-pro-install как программы с помощью контекстного меню или командой:
Для установки в серверной версии системы 18.04 только средствами командной строки используют команды (для драйверов 19.30):
После процедуры стандартной установки драйверов для видеокарт amd нужно также инсталлировать дополнительные пакеты:
Этим, среди прочего, лечится ошибка WARNING: amdgpu dkms failed for running kernel mining.
После инсталляции драйверов нужно добавить пользователя в группу видео. Это осуществляется командой:
Проверка пользователей, включенных в группу video делается командой:
Проверить правильность устанвоки драйверов можно командами:
После этого нужно откорректировать загрузчик, где нужно включить поддержку больших страниц видеопамяти (режим compute), а также отключить загрузку драйвера radeon для видеокарт поколения CGN 2.
Корректировка загрузчика ядра GRUB
Отредактировать GRUB можно с помощью редактора nano командой:
В редакторе нужно отредактировать строку GRUB_CMDLINE_LINUX=»», приведя ее к виду:
где amdgpu.vm_fragment_size=9 — это включение поддержки больших страниц памяти (аналог compute mode).
После корректирования grub нужно сохранить изменения, нажав control+o , подтвердить изменения, нажав Y, нажать Enter для сохранения файла, выйти из редактора (control+x) и затем выполнить команды:
В выражении amdgpu.vm_fragment_size=X значение фрагментирования видеопамяти X вычисляется по формуле 4KB*2^X. По умолчанию X=4, что соответствует страницам памяти величиной 64KB. Установка значения X=9 делает размер страниц памяти равным 2MB ,что значительно уменьшает фрагментацию и увеличивает быстродействие.
Отключение загрузки устаревшего драйвера Radeon в ядре Linux
Для видеокарт с микроархитектурой CGN второго поколения (CGN 2), нужно обязательно привести строку параметров загрузчика ядра GRUB_CMDLINE_LINUX_DEFAULT к такому виду:
После корректирования grub нужно сохранить изменения, нажав control+o , подтвердить изменения, нажав Y, нажать Enter для сохранения файла, выйти из редактора (control+x) и затем выполнить команды:
Установка пакета AMD APP SDK
Пакет AMD APP SDK позволяет использование технологии OpenCL. Его нужно устанавливать для старых версий драйверов. Например, уже для amdgpu-pro-17.40-514569 этот пакет ставить не нужно.
В новых драйверах AMDGPU-Pro и ROCm инсталлировать AMD APP SDK не нужно (AMD уже официально даже не распространяет этого пакета).
Для старых драйверов скачать пакет APP SDK можно с GitHub repo или на сайте sourceforge.
Как проверить версию установленных драйверов AMD в ubuntu?
Для изучения устройств, установленных в системе и поддерживающих технологию OpenCL, используют команду:
Пример вывода информации о видеокарте командой clinfo:
Кроме того, проверить, какой драйвер используется системой можно командой:
Скриншот видеокарт R9 290/290x, работающих в xubuntu 16.04 с драйверами amdgpu (вывод по команде lspci -k | grep -EA3 «VGA|3D|Display»):
Полную информацию о процессе загрузки всех драйверов в системе, режиме работы со страницами памяти и другую важную информацию о видеокартах (и не только) можно посмотреть в логах командой:
Выдача информации,касающейся подсистемы ядра Direct Rendering Manager (DRM), которая отвечает за взаимодействие с видеокартами:
Здесь есть информация о таких важных для майнинга элементах, например:
- initializing kernel modesetting (HAWAII 0x1002:0x67B0 0x174B:0xE285 0x00) — инициализация установок ядра для видеокарты HAWAII с указанием BIOS;
(для rx-ов отображается: initializing kernel modesetting (POLARIS10 0x1002:0x67DF 0x174B:0xE353 0xCF);
- memory usable by graphics device = 4096M — количество доступной видеопамяти;
- Detected VRAM RAM=4096M, BAR=256M — количество видеопамяти,
- RAM width 512bits GDDR5 — тип видеопамяти и разрядность шины и т.д.
При наличии проблем с установкой драйверов amd именно здесь стоит искать ошибки.
Для просмотра информации обо всех устройствах в системе можно использовать команду:
Источник