Одна из важнейших характеристик хорошей Linux-машины, особенно ноутбука, – управление питанием с точки зрения продления срока службы батареи.
В Linux есть утилиты которые помогут вам контролировать и отслеживать работу батареи, хотя многие из нас по-прежнему сталкиваются с проблемами в получении правильных настроек питания для управления энергопотреблением и улучшения срока службы батареи.
Вам также может понравиться: TLP – оптимизация работы батареи ноутбука на Linux
В этой статье мы рассмотрим утилиту Linux под названием PowerTOP, которая поможет вам получить соответствующие системные настройки для управления питанием от батареи на вашей Linux-машине.
Что такое PowerTOP?
PowerTOP – это инструмент диагностики на базе терминала, разработанный Intel, который помогает отслеживать энергопотребление программ, работающих в Linux-системе, когда она не подключена к источнику питания.
Важной особенностью PowerTOP является то, что она предоставляет интерактивный режим, который позволяет пользователю экспериментировать с различными настройками управления питанием.
Требования
Для работы PowerTOP требуются следующие компоненты:
- Средства разработки, такие как C, g, libstdc, autoconf, automake и libtool.
- В дополнение к вышеперечисленным, также требуются компоненты pciutils-devel, ncurses-devel, и libnl-devel
- версия ядра =>2.6.38
Как установить Powertop в Linux
PowerTOP можно легко установить из системных репозиториев по умолчанию, используя соответствующий менеджер пакетов для вашего конкретного дистрибутива Linux.
sudo apt install powertop [On Debian, Ubuntu and Mint] sudo yum install powertop [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] sudo emerge -a sys-apps/powertop [On Gentoo Linux] sudo apk add powertop [On Alpine Linux] sudo pacman -S powertop [On Arch Linux] sudo zypper install powertop [On OpenSUSE] sudo pkg install powertop [On FreeBSD]
Важно: Обратите внимание, что при установке Powertop из системных репозиториев по умолчанию вы получите более старую версию.
Если вы хотите установить самую последнюю версию Powertop, вы должны собрать и установить его из исходников, для этого в системе должны быть установлены следующие зависимости.
------------------- On Debian based Systems ------------------- sudo apt install build-essential ncurses-dev libnl-dev pciutils-dev libpci-dev libtool
------------------- On RedHat based Systems ------------------- sudo dnf install gcc-c++ ncurses-devel libnl-devel pciutils-devel libtool
После установки всех вышеперечисленных необходимых пакетов, пришло время скачать самую последнюю версию PowerTop и установить ее, как предлагается:
wget https://github.com/fenrus75/powertop/releases/download/v2.15/powertop.tar.gz tar -xvf powertop.tar.gz cd powertop/ ./configure sudo make && make install
Как использовать PowerTop в Linux?
Для использования этого инструмента необходимы права root, поскольку вся информация, необходимая Powertop для измерения энергопотребления приложений, собирается непосредственно с аппаратного обеспечения системы.
Попробуйте использовать его при питании ноутбука от батареи, чтобы увидеть влияние на систему. Он показывает общее энергопотребление системы и отдельных компонентов системы, перечисленных в различных категориях: устройства, процессы, системный таймер, работа ядра и прерывания.
Понимание параметров и использования PowerTop
Чтобы установить все настраиваемые параметры на оптимальные значения без интерактивного режима, используйте параметр --auto-tune
.
Чтобы запустить программу в режиме калибровки, используйте параметр --calibrate
. Если запустить Powertop от батареи ноутбука, он отслеживает потребление энергии, а также процессы, запущенные в системе, и после получения достаточного количества измерений мощности выдает оценку мощности.
Вы можете использовать эту опцию для получения более подходящих оценок при использовании этой опции, чтобы реализовать цикл калибровки через различные уровни отображения и рабочие нагрузки.
Для запуска в отладочном режиме используйте опцию --debug
.
Вы также можете сгенерировать отчет для анализа данных, используя опцию --csv=filename
. Создаваемый отчет называется CSV, и если вы не указываете имя файла, используется имя по умолчанию powertop.csv.
Чтобы сгенерировать html-файл отчета, используйте опцию --html=filename
. Вы можете указать, в течение какого времени в секундах будет генерироваться отчет, используя опцию --time=seconds
.
Вы можете указать файл рабочей нагрузки для выполнения в рамках калибровки перед генерацией отчета, используя опцию --workload=workload_filename
.
Для отображения справочных сообщений используйте опцию --help
или просмотрите manpage.
Для указания количества запусков теста используйте опцию --iteration
.
Использование PowerTop с примерами
Если запустить Powertop без каких-либо из вышеперечисленных опций, он запустится в интерактивном режиме, как показано на рисунке ниже.
powertop
Обзорный экран
На этом экране можно просмотреть список компонентов системы, которые наиболее часто посылают сигналы пробуждения процессору или потребляют больше всего энергии.
Idle stats
На нем отображается различная информация о состояниях процессора.
Frequency Stats
На этом экране отображается частота пробуждения процессора.
Device stats
Он предоставляет информацию, аналогичную экрану Overview, но только для устройств.
Tunables
Он предоставляет предложения по оптимизации системы для хорошего энергопотребления.
Как видно из приведенной выше информации, доступны различные экраны, и для переключения между ними можно использовать клавиши Tab и Shift + Tab. Выйдите из powertop, нажав клавишу Esc, как указано в нижней части экрана.
Из экрана отображается количество пробуждений системы каждую секунду, а при просмотре экрана статистики устройств отображается статистика энергопотребления различных аппаратных компонентов и драйверов.
Чтобы максимально экономить заряд батареи, необходимо минимизировать количество пробуждений системы. Для этого можно воспользоваться экраном Настройки.
«Плохо» обозначает настройку, которая не экономит энергию, но может быть полезна для производительности вашей системы.
Тогда как «Хорошо» обозначает настройку, которая экономит энергию. Нажмите клавишу [Enter] на любой настройке, чтобы переключить ее на другую настройку.
В примере ниже показан вывод при использовании опции --calibrate
.
powertop --calibrate
После циклов калибровки powertop отобразит обзорный экран с кратким описанием операций, как показано ниже.
Генерирование отчета PowerTop CSV
Следующий пример показывает генерацию отчета CSV за двадцать секунд.
powertop --csv=powertop_report.txt --time=20s
Теперь просмотрим CSV-отчет с помощью команды cat.
cat powertop_report.csv
Генерирование HTML-отчета PowerTop
Вы можете сгенерировать html-отчет следующим образом, расширение html автоматически добавляется к имени файла.
powertop --html=powertop
Пример html-файла отчета просматривается в браузере.
Этот инструмент также имеет службу демона, которая помогает автоматически установить все настройки на «Хорошо» для оптимального энергосбережения, и вы можете использовать ее следующим образом:
systmctl start powertop.service
Чтобы заставить службу демона запускаться во время загрузки, выполните следующую команду:
systemctl enable powertop.service
Заключение
Вы должны соблюдать осторожность при использовании службы демона, поскольку некоторые настройки представляют собой риск потери данных или странного поведения оборудования системы. Это очевидно на примере настроек «VM writeback timeout», которые влияют на время ожидания системы перед записью любых изменений данных на реальный диск.
Когда система теряет весь свой заряд батареи, вы рискуете потерять все изменения, сделанные с данными за последние несколько секунд. Поэтому вам придется выбирать между экономией энергии и сохранностью данных.
Попробуйте использовать этот инструмент в течение некоторого периода времени и понаблюдайте за работой вашей батареи.
Комментарии (0)