Мониторинг критических параметров устройств при майнинге в ubuntu

Проверка видеокарты в Linux

1. Утилита glxgears

Программа glxgears это популярный OpenGL тест, который входит в пакет утилит mesa-utils. Для установки в Ubuntu выполните команду:

Для тестирования выполните команду glxgears в терминале:

Программа откроет окно, в котором будут рендериться три вращающихся в 3D пространстве шестеренки. Частота кадров (FPS) измеряется и выводится в терминал каждые 5 секунд. Это очень старый инструмент и поэтому позволяет проверить только небольшую часть из возможностей современного OpenGL.

Раньше он использовался для проверки корректности установки и работы проприетарного видеодрайвера. Драйверы с открытым исходным кодом, как правило, работали ужасно, и это было  очень заметно во время того, как выполнялся этот тест opengl linux. Сейчас же вы не заметите никакой разницы, по крайней мере, в glxgears.

2. GLMark2

GLMark2 — более мощный инструмент, выпущенный разработчиками дистрибутива Lenaro. В отличие от glxgears, glmark предлагает большое количество тестов для различных аспектов работы видеокарты (буферизация, освещение, текстурирование, построение и т. д.) что позволяет лучше оценить видеокарту.

Каждый тест проводится на протяжении 10-ти секунд, а частота кадров подсчитывается индивидуально. В конце программа выдает оценку производительности на основе всех проведенных тестов. Мне нравится этот инструмент своей простотой и безупречной работой. Вы можете найти его в официальных репозиториях большинства дистрибутивов под названием gmark2. Для установки в Ubuntu выполните:

После установки проверка видеокарты может быть запущена командой:

3. GpuTest

Это небольшая современная утилита для тестирования видеокарты в Linux, она поддерживает несколько OpenGL тестов, в том числе и для современных стандартов. Вот поддерживаемые тесты: треугольник (OpenGL 2.1 или OpenGL 3.2), пиксельный тест шейдеров (OpenGL 2.1 или OpenGL 3.2), FurMark (OpenGL 2.1 или 3.2), Plot3D (OpenGL 2.1 или 3.2), GiMark и TessMark (OpenGL 4.0).

4. Набор программ Unigine

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

Установочный файл занимает около 1,5 гигабайта. После загрузки просто выполните его для установки программы:

После этого вы сможете найти программу в главном меню системы. Запустите её:

На вкладке Benchmark вы можете выполнить тест производительности видеокарты. Чтобы выбрать параметры тестирования вручную переключите поле Preset в положение Custom или оставьте по умолчанию. Для запуска тестирования нажмите кнопку Run.

Во время тестирования в правом верхнем углу будет отображаться информация о видеокарте. Это объем памяти, частота, а самое главное температура. По завершении вы увидите оценку и сможете сравнить её с другими оценками в интернете:

Командная строка

Командная строка — это способ организации интерфейса, в котором каждая строка, введённая пользователем — это команда системе, которую та должна выполнить. Термин «командная строка» происходит от того, что команды вводятся обычно в одну строку, которая завершается нажатием клавиши «ввод» (). В Linux этот вид интерфейса всегда был основным, а потому хорошо развитым.

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

Чтобы получить командную строку, пользователь должен войти в систему и запустить программу, которая будет принимать его команды и передавать их на выполнение — командную оболочку (её ещё называют интерпретатор командной строки, просто оболочка, по-английски «shell»).

Получить командную строку можно многими способами. Самый простой и универсальный — зарегистрироваться на одной из первых шести виртуальных консолей: после входа в систему запустится командная оболочка и появится приглашение командной строки. Не выходя из графической среды можно получить командную строку при помощи любого эмулятора терминала — они перечислены в главном меню в разделе «Терминалы». Для пользователей графической среды KDE командная строка доступна также по нажатию F2 (функция «ввести команду»).

Умение найти командную строку и выполнить в ней команду пригодится любому пользователю Linux, даже если он работает исключительно в графической оконной среде. Дело в том, что графические интерфейсы в Linux очень многообразны, кроме того, пользователь имеет возможность существенно поменять конкретный вид и расположение частей интерфейса по своему вкусу. Найти общие для всех и неизменные свойства графического интерфейса в Linux весьма непросто (если вообще возможно). В то же время командная строка доступна всегда и всюду выглядит практически одинаково. Поэтому очень часто в документации, рассчитанной на широкую аудиторию и общие случаи, в пример приводятся именно фрагменты командной строки. Нередко к командной строке апеллируют и люди, к которым обратились за советом по Linux. Оно и понятно: процитировать команду, которая даст нужный результат, гораздо проще и лаконичнее, чем словами описывать действия, которые нужно произвести для достижения того же эффекта в графической среде.

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

Командная строка начинается приглашением — это подсказка, свидетельствующая о том, что система готова принимать команды пользователя. В процессе выполнения команды система может вывести те или иные сообщения, а когда выполнение завершается — вновь выводится приглашение командной строки. Приглашение может быть оформлено по-разному, но чаще всего оно заканчивается символом «». В примерах в документации этим символом условно обозначается командная строка: всё, что следует после него и до конца строки — это и есть команда, которую нужно ввести. Пока не нажат , набранную команду можно редактировать.

$ date --universal
Чтв Окт 13 23:59:23 UTC 2005
$ 

Пример 1. Пример командной строки

В этом примере команда состоит из имени программы и единственного параметра , предписывающего ей выводить время по Гринвичу. Строка  — результат её выполнения, ответ системы. Если для выполнения команды требуются полномочия системного администратора, то в примерах для обозначения командной строки при такой команде ставится символ «».

О том, как узнать подробнее о разных командах, немного написано в разделе Документация, и много — во всевозможных учебниках и пособиях по Linux. Краткий рекомендательный список книг и сетевых ресурсов приведён в конце того же раздела «Документация».

Phoronix Test Suite

The Phoronix Test Suite helps you stress test your graphics card on Linux, Mac, and Windows. It actually uses the Unigine benchmarks. However, you may find it easier to use. It’s designed to automate much of the process for you. It’s updated regularly, with new tests being added as needed to help you better monitor your entire system, not just the graphics card.

It currently features over 400 tests, and you can set it up for regular system monitoring. While it may be overkill for the average user, if you want to compare performance over time or just test certain hardware, you’re covered.

To download the latest version for Ubuntu/Debian systems or general Linux systems, use the following:

Управление процессами в Linux

Также в Linux присутствуют некоторые команды для управления процессами:

   kill — посылает процессу сигнал завершения работы;

   pkill — завершает процесс по его имени;

   pgrep — ищет процесс по его имени (и, опционально, по имени запустившего его пользователя);

   killall — завершает все активные процессы.

Ниже приведены несколько основных примеров их использования:

Отправка сигналов процессам

Основополагающим способом управления процессами в Linux является отправка им соответствующих сигналов. Для перечисления списка всех доступных сигналов, введите команду:

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

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

   SIGHUP (1) — отправляется процессу, когда его управляющий терминал закрыт.

   SIGINT (2) — отправляется процессу управляющим терминалом, когда пользователь прерывает процесс нажатием клавиш Ctrl+C.

   SIGQUIT (3) — отправляется процессу, если пользователь посылает сигнал выхода Ctrl+D.

   SIGKILL (9) — этот сигнал немедленно завершает (убивает) процесс, и процесс не будет выполнять никаких операций очистки за собой.

   SIGTERM (15) — сигнал завершения программы (отправляется командой по умолчанию).

   SIGTSTP (20) — отправляется процессу управляющим терминалом с запросом на остановку; инициируется пользователем нажатием клавиш Ctrl+Z.

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

или

или

Чтобы убить приложение, используя его имя, применяются команды или , например:

или

Изменение приоритета процесса

В системе Linux все активные процессы имеют определенный приоритет выполнения, задаваемый так называемым nice-значением. Процессы с более высоким приоритетом обычно получают больше процессорного времени, чем процессы с более низким приоритетом. Однако пользователь с root-правами может повлиять на это с помощью команд nice и renice.

Узнать значение приоритета команды можно по выводу команды (столбец NI):

Используйте команду , чтобы задать NI-значение для запускаемого процесса. Имейте в виду, что обычные пользователи могут задавать данный параметр в диапазоне от до тем процессам, которыми они владеют. Только пользователь root может использовать отрицательные значения приоритета.

Чем больше nice-значение, тем меньшим приоритетом будет обладать процесс. Например, вы можете задать приоритет для запускаемого процесса следующим образом:

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

На данный момент это всё! Если у вас есть какие-либо вопросы или дополнительные идеи, вы можете поделиться ими с нами с помощью комментариев.

Unigine Heaven

Компьютерный бенчмарк, разработанный российской компанией «UNIGINE Corp.» на основе собственного движка. Бенчмарк использует достижения движка «Unigine» для проведения стресс-тестов графических ускорителей. Интерактивные прогулки и кинематографические сцены, созданные с применением передовых достижений в области трехмерной компьютерной графики, нагружают любую видеокарту до предела. Так проверяется ее стабильность и качество системы охлаждения.

В отличие от аналогичных программ, Unigine Heaven создавали сцены такими, чтобы за ними хотелось наблюдать: лаборатория безумного профессора в работе, тропический пляж с пальмами и прибоем, маленькая деревня с мощёными дорогами, уютными строениями и статуей дракона, часовня в готическом стиле, лесной массив. Каждую сцену нужно загружать отдельно. В программе также присутствуют алгоритмы, которые не могут выдержать даже топовые видеокарты.

В настройках можно указать используемый DirectX, качество шейдеров, фильтрации, сглаживания, тесселяцию, разрешение. Запускается процесс кнопкой «Run».

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

Настройки во время теста

Скачать

Unigine Benchmark

If you’re looking for an in-depth test, the Unigine Benchmark tools will likely satisfy you. Using the Unigine 2 Engine, the incredibly detailed 3D environments created by the tool give you an actual game-like environment you can play around in, with underlying tools to test your GPU as you go.

This is the perfect tool for gamers looking to benchmark their GPU on Linux. There are several environments to choose from, with each new model offering new advancements to offer the best stress tests for newer graphics cards.

Each benchmark tool includes an automated stress test mode, deep framerate analysis, and a detailed reporting feature to help you identify problems. The latest tool, Superposition, also includes support for VR devices, allowing you to test your graphics card for VR readiness. You can also check out Heaven, which is an older tool but still highly effective.

To install, go to the Unigine Benchmark website and select the tool you wish to download, then click the “download” button. The tool will arrive as a RUN file. Once downloaded, open a terminal window, go to the location of the file, and type:

Replace “Benchmark-Filename” with the correct filename for your Benchmark tool. Once you’ve done that, type the following to begin installing the testing software:

Once again, replace “Benchmark-Filename” with the correct filename. Enter the folder the installation file creates using the command, then type the following:

Replace “superposition” with the name of one of the other Unigine benchmark tools if you’re using an older version.

Запуск программы Mats на компьютере под управлением альтернативного дистрибутива Linux

Проверка видеокарт не со штатной загрузочной флешки сопряжена с рядом проблем и не рекомендована для использования. Для полноценной работы утилиты необходим функционал драйвера из пакета MOdular Diagnostic Suite.

Чтобы запускать программу Mats в Linux, предварительно нужно установить необходимые пакеты. Это делается скриптом из папки mods/релиз (нужно не забыть присвоить необходимые разрешения на его выполнение):

install_module.sh --install

Запуск программы mats из командной строки Linux из каталога программы осуществляется командой:

./runmats

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

Проверка памяти видеокарт AMD описывается в статье Тестирование памяти видеокарт AMD с помощью скриптов direct-mem-test и dmgg.

Furmark

Программа предлагает единственный тест: сцена с вращающимся пушистым кольцом. Для запуска тестирования GPU кликните «Burn-in test». Предварительно можете изменить доступные настройки:

  • разрешение;
  • сглаживание;
  • динамическая камера и задний план;
  • длительность;
  • пиковая температура графического процессора.

Кнопка «GPU stress test» запустит экстра-тест длительностью 15 минут в выбранном вами разрешении.

Единственный тест Furmark

В ходе тестирования на дисплее отображается сама сцена, график температуры устройства и ряд сведений о прохождении тестирования. Спустя пару минут кулер начнет работать заметно громче, а еще через несколько – почти на максимуме.

Скачать

Бенчмарк в sysbench

sysbench — это утилита командной строки. Она создана для оценки производительности серверов с сильно нагруженными СУБД, но подходит и для проведения бенчмарков обычных систем.

Установка в Ubuntu, Linux Mint, Debian, Kali Linux:

sudo apt install sysbench

Встроенные в программу тесты:

  • fileio — Тестирование файлового ввода/вывода
  • cpu — Тестирование производительности CPU
  • memory — Тестирование скорости функций памяти
  • threads — Тестирование производительности подсистемы потоков
  • mutex — тест производительности Mutex

Для запуска теста производительности центрального процессора:

sysbench cpu run

Обратите внимание как запускается программа: в начале идёт название теста, затем опции (в первом примере их нет), а затем команда.

Для программы установлено два придела выполнения:

  • 10000 операций с числами
  • 10 секунд выполнения

В зависимости от того, что наступит первым, программа завершит свою работу или после 10000 событий, либо после 10 секунд.

Современные процессоры очень производительные и если программа завершилась очень быстро, то данные могут быть искажены. Например, при оценки производительности процессора играет роль, к примеру, троттлинг (сброс частот). Троттлинг начинается из-за перегрева или превышения TDP. Эти эффекты наблюдаются только на длительных дистанциях работы процессора. Если, к примеру, тест завершился за секунду и вы получили n обработанных операций, это не означает, что процессор за 60 секунд выполнит 60 * n операций, поскольку он будет сбрасывать частоты из-за перегрева и выхода за пределы установленного в TDP рассеивания тепла.

Для более длительного выполнения теста используются опции —cpu-max-prime и —time. Первая устанавливает максимальное количество выполненных операций, а вторая — максимальное время проведения бенчмарка. При одновременном использовании опций приоритет имеет —time.

Современные центральные процессоры являются многоядерными и многопотоковыми:

По умолчанию sysbench запускает в один поток. Поэтому если вы хотите задействовать все ядра вашего процессора, используйте опцию —threads. У меня 6 физических и 12 логических ядер центрального процессора, поэтому я буду использовать значение 12, чтобы работали все процессоры.

При использовании опции —cpu-max-prime, чем меньше время завершения программы, тем производительныее центральный процессор:

sysbench cpu --threads=12 --cpu-max-prime=100000 run

Программа завершила работу слишком быстро — за 10 секунд вряд ли процессор успел подвергнуться серьёзному троттлингу. Поэтому с такими значениями тест подходит для оценки пиковой производительности на короткой дистанции.

Получены результаты:

CPU speed:
    events per second:   538.23

General statistics:
    total time:                          10.0188s
    total number of events:              5393

Latency (ms):
         min:                                   19.85
         avg:                                   22.27
         max:                                   30.56
         95th percentile:                       23.10
         sum:                               120125.61

Threads fairness:
    events (avg/stddev):           449.4167/4.11
    execution time (avg/stddev):   10.0105/0.01

CPU speed events per second означает количество выполненный в центральном процессоре операций за секунду — чем выше значение, тем производительнее система.

General statistics total time означает общее время выполнения операций.

General statistics total number of events означает общее количество выполненный событий.

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

sysbench cpu --cpu-max-prime=200000 run

Ещё один способ проверки троттлинга и оценки производительности процессора под длительной нагрузкой, это установка времени выполнении, в примере ниже установлено время в 300 секунд.

sysbench cpu --threads=12 --time=300 run

У меня при использовании опций —time и —cpu-max-prime CPU speed events per second различается в десятки раз — видимо или какой-то баг в программе, либо программа считает по каким-то другим правилам.

Как включить OpenCL на Arch Linux (BlackArch) для hashcat

Включение OpenCL для NVIDIA

Удалите xf86-video-nouveau есть он есть:

sudo pacman -R xf86-video-nouveau

Установите проприетарный драйвер NVIDIA:

sudo pacman -S nvidia nvidia-utils

Установите драйвер CUDA и другие необходимые пакеты, а также hashcat:

sudo pacman -S opencl-nvidia opencl-headers cuda hashcat

Включение OpenCL для Intel

sudo pacman -S linux-firmware intel-compute-runtime pocl

Теперь проверим список устройств:

hashcat -I

Запустим бенчмарк:

hashcat -b -D 1,2 --force

Пакет beignet

beignet — это реализация OpenCL для Intel IvyBridge и Haswell iGPUs. В настоящее время этот пакет считается устаревшим и его должен заменить intel-compute-runtime. У меня в системе установить beignet, то появляется дополнительное устройство OpenCL — как на Kali Linux, где также видно 3 устройства OpenCL. Но это устройство работает нестабильно с Hashcat.

Вы можете протестировать, как себя ведёт beignet на вашей системе. Возможно, для более старых процессоров это единственная опция.

Как установить ROCm – открытую реализацию OpenCL на видеокартах AMD?¶

В данный момент AMD не предоставляет официальных сборок ROCm – открытой реализации OpenCL для Fedora, однако существует рабочий способ заставить работать её в данном дистрибутиве.

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

Установим утилиту hashcat, которую будем использовать для проверки работоспособности OpenCL-стека:

sudo dnf install hashcat

Запустим hashcat в режиме теста производительности:

hashcat -b

Если тест прошёл успешно, всё было успешно установлено и настроено.

Внимание! На данный момент ROCm не поддерживает работу с графическими приложениями, такими как рендер Cycles в Blender, однако работа в этой области ведется

Steam Proton

Самый известный инструмент для Linux — Steam Proton. Наверняка, многие из вас хотя бы раз слышали о нём. Если нет, то Proton (Steam Proton, Valve Proton) — это слой совместимости для Windows-игр, который позволяет запускать их в системах на базе ядра Linux.

Proton разработан Valve и CodeWeavers как форк популярного инструмента Wine, но включает в себя реализацию DirectX 9/10/11 (на базе пакета DXVK) и DirectX 12 (на базеvkd3d), работающие через трансляцию вызовов DirectX в API Vulkan, предоставляет улучшенную поддержку игровых контроллеров и возможность использования полноэкранного режима независимо от поддерживаемых в играх разрешений экрана.

Для увеличения производительности многопоточных игр поддерживаются механизмы «esync» (Eventfd Synchronization) и «futex/fsync». Proton интегрирован в клиент Steam как часть «Steam Play».

Помимо официального Steam Proton существуют также его форки, например популярный форк от GloriousEggroll — Proton-GE-CUSTOM

Если устройство не включается

Сразу разберем наиболее сложный способ. В случае, если компьютер или ноутбук не включается, проверить, какая видеокарта установлена, можно двумя способами. Для дискретной видеокарты – посмотреть на маркировку. Для интегрированной – ознакомиться с информацией о процессоре, там же будет указана и видеокарта, которая идет в комплектации с ним.

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

Если страна вовсе нас не интересует, то модель – это то, что нужно посмотреть в первую очередь. Бывает так, что эта информация стерта или написана нечетко, тогда нужно посмотреть на идентификатор модели, он выглядит как набор букв и чисел. Достаточно ввести эти данные в интернет и посмотреть, какая видеокарта установлена в компьютере.

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

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

Важно знать

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

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

Обратите внимание

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

Самый простой вариант в данном случае – это если на устройстве установлена интегрированная графика. Введите в поисковом запросе название и модель процессора и получите полную информацию о нем, в том числе и о графическом чипе, который идет в комплекте с ним.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Ваша ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: