4 полезных инструмента для мониторинга температуры CPU и GPU в Ubuntu
Температура процессора или графического процессора полностью зависит от использования запущенных программ или приложений. Чувствительные компоненты компьютера, такие как процессоры, имеют ограниченный срок службы, и их работа при температуре, превышающей определенный предел (или при более высоких температурах в целом), может сократить его. Кроме того, это также может вызвать тепловое дросселирование, особенно когда вентилятор не обеспечивает достаточного охлаждения.
Поэтому важно следить за температурой процессора вашей системы, чтобы не повредить ее в результате перегрева. В этой статье мы поделимся некоторыми полезными инструментами командной строки, которые помогут вам внимательно следить за температурой вашего процессора CPU и GPU.
1. Glances
Glances — это кроссплатформенный, продвинутый и популярный инструмент мониторинга системы в режиме реального времени, который использует библиотеку psutil для сбора информации из различных системных ресурсов.
Он может отображать информацию с датчиков с помощью инструментов psutil или hddtemp . Одной из его уникальных функций является режим веб-сервера, который позволяет получить к нему доступ через веб-браузер для удаленного мониторинга вашего сервера Linux.
Существуют различные способы установки Glances в вашей системе, но предпочтительным способом установки glances является использование сценария автоматической установки, который установит последнюю готовую к работе версию.
Чтобы установить Glances в вашей системе, используйте команду curl или wget , как показано ниже.
# curl -L https://bit.ly/glances | /bin/bash
# wget -O- https://bit.ly/glances | /bin/bash
После того, как вы установили его, запустите Glances и нажмите клавишу f , чтобы просмотреть информацию о датчиках.
2. Sensors
Sensors — это простая утилита командной строки, которая отображает текущие показания всех чипов датчиков, включая ЦП . Он поставляется предварительно установленным в дистрибутивы Linux, такие как Ubuntu по умолчанию, в противном случае установите его.
$ sudo apt-get install lm-sensors
Затем вы можете выполнить следующую команду, чтобы найти все датчики в вашей системе.
После обнаружения вы можете выполнить следующую команду, чтобы проверить температуру процессора, температуру графического процессора, скорость вращения вентилятора, напряжение и т. д.
3. Hardinfo
Hardinfo — это легкий системный профилировщик и инструмент для тестирования, разработанный для аппаратного анализа и генерации отчетов. Он содержит подробные отчеты о системном оборудовании и позволяет создавать отчеты HTML на оборудовании вашей системы.
Чтобы установить пакет hardinfo в вашей системе Ubuntu Linux, выполните следующую команду.
$ sudo apt install hardinfo
После завершения установки вы можете запустить hardinfo для просмотра информации об устройствах, выполнив следующую команду.
Чтобы запустить приложение с графическим интерфейсом , просто запустите следующую команду или найдите « System Profiler and Benchmark » в системном меню или Dash и откройте его.
Затем нажмите на sensors , чтобы просмотреть информацию о датчиках, как показано на следующем скриншоте.
4. i7z
i7z — это небольшая утилита командной строки, которая показывает информацию о процессорах Intel Core i7, i5, i3, включая температуру. Вы можете установить его в своей системе Ubuntu , выполнив следующую команду.
$ sudo apt install i7z
После установки запустите i7z с привилегиями root .
На этом пока все! В этой статье мы поделились полезными инструментами командной строки для просмотра температуры процессора и графического процессора в системе Ubuntu. Вы можете высказать свое мнение об этой статье или задать вопросы через форму обратной связи ниже.
Электрический блогнот
мои заметки на полях
контроль и разгон графических карт NVIDIA в Linux
Многие геймеры, майнеры и просто любители повозиться с multimedia давно используют видеокарты NVIDIA для своих целей. Используют на «всю катушку». Разработчики видеокарт позволили простым людям создавать программы для запуска на видеокартах, используя мощь всех CUDA ядер. Попутно видеокарты стали комплектоваться оперативной памятью в несколько гигабайт. После этого простая видеокарта превратилась в компьютер-в-компьютере. Поэтому контроль графических карт NVIDIA является первостепенной задачей для тех, кто хочет выжать по максимуму и одновременно добиться того, чтобы карта работала, как можно дольше.
nvidia-smi
Для контроля состояния видеокарты мы будем использовать утилиту nvidia-smi (NVIDIA System Management Interface), которая входит в комплект драйверов производимых компанией NVIDIA для своих карт.
Если у вас Linux, то после установки NVIDIA драйверов nvidia-smi можно найти в папке:
Nvidia-smi является консольной программой (у нее нет графического интерфейса) и для ее запуска необходимо воспользоваться командной строкой.
Полезные команды
С моей точки зрения самой полезным способом запуска nvidia-smi, является запуск без параметров:
вы получите много полезной информации структурированной в виде простенькой таблички. Давайте запусти несколько приложений нагружающих видеокарты и посмотрим, что выдаст nvidia-smi. Для этого воспользуемся примерами, которые поставляются вместе с NVIDIA Cuda Toolkit (установка этого Toolkit описана здесь). Эти примеры точно нагрузят нашу видеокарту 🙂 А так же запустим конвертирование видео из одного формата в другой с помощью утилиты FFmpeg, которая проводит кодирование/раскодирование видео на графическом ускорителе видеокарты.
Глядя на скриншот мы видим, что у нас запущены 4 приложения использующих ресурсы видеокарты:
- Xorg — графическая подсистема Linux. Использует драйвер NVIDIA, поэтому она здесь в списке;
- SimpleGL — пример из Cuda Toolkit;
- marchinCubes — еще пример из Cuda Toolkit;
- FFmpeg — в нашем тесте он занимается конвертированием видео с помощью NVIDIA GPU.
Шапка таблицы дает информацию о названии видеокарты, версии драйвера, текущем режиме работы и температуру. Все дается в понятном виде и дополнительных объяснений не требует. Рассмотрим подробнее раздел Processes, здесь каждый процесс имеет 5 параметров:
- GPU — номер видеокарты на котором приложение запущено (если видеокарта одна, то там будет 0);
- PID — ID процесса, по этому ID вы можете kill’ьнуть процесс обычной командой kill;
- Type — тип приложения:
- «G» — графическое (обычная графика, которая отрисовывается видеокартой);
- «C» — вычислительное, например можно очень эффективно перемножать матрицы на видеокарте (CUDA ядра), но чаще всего подбирают пароли или майнят битки;
- «G+C» — рисует и вычисляет и все это делает с помощью видеокарты.
- Process name — название приложения;
- GPU Memory Usage — сколько видеопамяти занимает приложение.
Чтобы получить максимум информации о состоянии видеокарты наберите:
вывалится огромная «простыня», где вы найдете всю информацию про вашу карточку.
Если установлено несколько видеокарт в системе и нужно получить информацию о какой-то карте конкретно, то нужно указать ID этой карты:
Для того, чтобы получить весь список видеокарт в системе воспользуйтесь командой:
Журнал
Для контроля состояния видеокарты в течение некоторого промежутка времени поможет журнал или log. Nvidia-smi позволяет выводить информацию о требуемых параметрах на экран или в файл для последующего анализа.
Следующая команда будет непрерывно с интервалом в 5 секунд выводить на экран информация о потреблении видеопамяти и температуре GPU:
С помощью опции «-f» можно перенаправить вывод в файл:
Еще один способ смотреть за видеокартой — это запустить nvidia-smi с ключами dmon или pmon.
С помощью dmon можно следить за общими параметрами видеокарты. Я чаще всего использую dmon для контроля загруженности чипов NVDEC/NVENC расположенных в карте NVIDIA и которые отвечают за кодирование и раскодирование видео на аппаратном уровне.
Если хотите журналировать потребление ресурсов видеокарты каждым прорцессом, то можно воспользоваться опцией pmon.
Driver Persistence
Peristence — постоянство. Если приложению нужна видеокарта, то обращение происходит сначала к драйверу, а от драйвера к видеокарте. Современные системы могут выгружать драйверы из памяти (например, понизить энергопотребление). Если приложение требует драйвер, а драйвер в это время выгружен, то система загружает драйвер. На это уходит время. Возникает лаг (lag). Чтобы лагов не было, есть возможность сделать драйвер невыгружаемым:
проверяем статус драйвера»
для того, чтобы вернуть все как было (разрешить выгружать драйвер) делаем:
и сразу же проверяем:
Следует помнить, что если вы меняли настройки видеокарты (частоту, энергопотребление), то перевод/вывод ее в Persistence сбросит все предыдущие настройки.
Разгон
По умолчанию разгон выключен. Вы не можете контролировать частоту графического процессора:
ни скорость вентилятора на видеокарте:
Для того, чтобы в nvidia-settings появилась возможность разгона, нужно добавить в файл
в секцию Section «Device» строку:
и перезагрузить компьютер. После перезагрузки в nvidia-settings станут доступны следующие опции для регулировки разгона:
настройка частоты графического процессора
настройка скорости вращения вентилятора
Следует помнить, что разгон переводит видеокарту в нестандартный режим работы и поэтому контроль ее состояния нужно осуществлять еще тщательнее.
Заключение
В данной заметке мы рассмотрели, как осуществлять контроль и разгон графических карт NVIDIA в Linux. Затронули только самые базовые принципы и лишь слегка погрузились в эту интересную тему. На простых примерах посмотрели, как следить за состоянием видеокарты, как вести логи. Слегка коснулись темы разгона. Правда зачастую уже и этого достаточно, чтобы грамотно задействовать мощь видеокарты.