Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), РУСБ.10015-10
- Astra Linux Special Edition РУСБ.10015-17
- Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным оперативным обновлением БЮЛЛЕТЕНЬ № 20200327SE16 (оперативное обновление 5)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1
- Astra Linux Special Edition РУСБ.10015-16 исп. 2
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
- Astra Linux Common Edition 2.12
Данная статья представляет собой обзор различных методов энергосбережения, доступных при работе с Astra Linux. Статья написана на основе документации на инструменты командной строки для управления энергосбережением :
- powertop (пакет powertop). Пакет входит в состав всех дистрибутивов Astra Linux;
- tlp (пакет tlp). Пакет входит в состав:
- Astra Linux Common Edition;
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) начиная с обновления БЮЛЛЕТЕНЬ № 20200327SE16 (оперативное обновление 5);
- Astra Linux Special Edition x.7;
- laptop_mode (пакет laptop-mode-tools). Пакет входит в состав:
- Astra Linux Common Edition начиная с 2.12.42;
- Astra Linux Special Edition x.7;
Инструменты tlp и laptop-mode выполняют сходные функции и несовместимы между собой. Использовать следует только один из них.
Кроме того, инструмент laptop-mode частично дублирует некоторые функции (яркость подсветки, гашение монитора) штатных инструментов Astra Linux (fly-admin-power, powerdevil). Следует применять настройки, не приводящие к конфликту используемых инструментов.
Общие сведения
Инструмент PowerTOP разработан компанией Intel и представляет собой средство для диагностики состояний энергопотребления и управления некоторыми его параметрами. PowerTOP имеет интерактивный режим, в котором можно экспериментировать с некоторыми параметрами управления энергопотреблением, не находящимися под управлением стандартно установленной ОС. При этом изменения параметров не являются постоянными и сохраняются только до перезагрузки, что позволяет восстановить работоспособность при неудачной настройке параметров.
TLP и laptop-mode-tools (далее - LMT) являются не интерактивными инструментами, и позволяют снижать энергопотребление без необходимости вникать во все технические детали. Эти инструменты устанавливаются в конфигурации, уже оптимизированной для обеспечения максимального времени работы батарей, и могут быть настроены для соответствия специфическим требованиям и/или программно-аппаратным платформам.
Замечания:
- TLP работает на всех моделях ноутбуков, однако установка порогов зарядки батарей доступна только на IBM/Lenovo ThinkPad;
- TLP не поддерживает управление яркостью подсветки дисплея и очисткой терминала, так как это дублирует возможности других пакетов, в частности, пакета powerdevil, штатно использующегося в Astra Linux для управления электропитанием;
- LMT поддерживает управление яркостью подсветки дисплея и очисткой терминала, что может конфликтовать со штатным для Astra Linux пакетом powerdevil;
Оба пакета позволяют перевести ядро в специальный режим работы - так называемый "режим laptop", позволяющий останавливать жесткие диски для экономии энергии.
Кроме того, поддерживаются различные параметры энергопотребления процессоров, периферийных устройств, шин данных, видео и аудио устройств.
Основные возможности (на примере TLP):
- Laptop-режим ядра и таймауты "грязных" буферов;
- Управление рабочей частотой процессоров включая режимы разгона ("turbo boost" / "turbo core") и пониженного напряжения ("undervoltage");
- Ограничение минимальных/максимальных режимов энергопотребления для контроля нагрева процессоров (только intel_pstate);
- Поддержка технологии управления энергопотреблением HWP (Технология HWP позволяет процессорам самостоятельно выбирать свою скорость работы без использования множителей частоты, обеспечивая более быстрое реагирование на изменения нагрузки);
- Поддержка политик баланса производительности/энергосбережения (x86_energy_perf_policy);
- Расширенное управление электропитанием НЖМД (Advanced Power Magement level, APM) и индивидуальное управление остановкой дисков;
- Управление электропитанием периферийных устройств в соответствии со стандартом AHCI (Link Power Management, ALPM) с поддержкой списков устройств;
- Управление в соответствии со стандартом AHCI рабочим питанием контроллеров и накопителей (экспериментальная возможность);
- Управление активным состоянием шины PCIe (PCIe active state power management, ASPM);
- Управление рабочим питанием устройств, подключенных к шине PCIe;
- Управление энергопотреблением графических карт Intel/AMD Radeon GPU (KMS and DPM);
- Автоматическое подключение/отключение интегрированных беспроводных устройств;
- Отключение оптических приводов;
- Режим энергосбережения для аудио устройств.
- Планировщик операций ввода/вывода с возможностью установки планировщика индивидуально для каждого носителя;
- Автоматический перевод в режим ожидания устройств USB с черным/белым списками и автоматическим исключением устройств ввода;
- Подключение/отключение интегрированных устройств wifi, bluetooth, wwan при старте/выключении системы;
- Восстановление сохранённого при выключении системы состояния беспроводных устройств при старте системы;
- Управление беспроводными устройствами: переключение по подключению/отключению к сети или доку;
- Запрет пробуждения по сети (Wake On LAN);
- Восстановление состояния интегрированных устройств WWAN и bluetooth после режимов ожидания/гибернации;
- Пороги зарядки батарей и перекалибровка батарей (только ThinkPad-ы);
PowerTOP
Установка
Пакет powetop входит в дистрибутивы:
- Astra Linux Special Edition РУСБ.10015-16 исп. 2;
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1);
- Astra Linux Common Edition 2.12.
и устанавливается автоматически при установке ОС.
Основные концепции управления электропитанием
Активная мощность - мощность, потребляемая системой при активной работе, например, мощность, потребляемая при просмотре WEB-страниц.
Мощность холостого хода - мощность, потребляемая в отстутствие использования, или мощность, потребляемая в режимах, когда задействованы не все компоненты системы. Например, при редактировании документов для увеличения времени работы от батарей могут быть отключены SSD-накопители или устройства Wi-Fi.
Расширенный интерфейс настройки и управления питанием (Asvanced Configuration and Power Interface, ACPI) - стандартный интерфейс, обеспечивающий операционным системам доступ к настройке управления питанием и тепловыделением для мобильных устройств, ноутбуков, настольных компьютеров.
Cи-состояния ACPI (ACPI C-states) - системы, работающие по стандарту ACPI, могут находиться в одном из 4-х состояний: C0, C1, C2 и C3. Обычно отображаются системным BIOS-ом на внутренние Cи-состояния компонентов аппаратной платформы. Могут быть получены операционной системой через драйверы acpi_idle или intel_idle. Определить используемый драйвер можно командой
Драйвер itel_idle - драйвер холостого режима процессоров, поддерживающий современные процессоры Intel. Этот драйвер представляет ядру данные для прогнозирования продолжительности простоя процессоров.
Си-состояния процессора (CPU C-state) - при переходе платформы в режим холостой работы операционная система может переводить процессоры в состояния пониженного энергопотребления. Эти состояния (Си-состояния процессора) применяются к отдельным ядрам. Обозначение C0 используется для полностью включенного работающего процессора. Переход к каждому следующему состоянию (C1 - Cn) выполняется отключением всё большего набора частей процессора.
Пакетные Си-состояния (PC-state или PCx) - обозначают перевод всех ядер в некоторое состояние, и отражают состояние ядра с самым высоким энергопотреблением. Так, например, 4-х ядерная система, в которой одно ядро находится в состоянии C3, а остальные - в состоянии C6, будет находиться в пакетном состоянии PC3.
Современные процессорные архитектуры позволяют операционной системе изменять частоту процессоров. Обычно это применяется для снижения частоты для энергосбережения, и повышения для обработки высокой загрузки. В отдельных случаях, когда доступная мощность ограничена, может потребоваться ограничить максимальную частоты, которую может установить операционная система. Для этого могут применяться два различных драйвера - cpufreq и intel_pstates. Драйвер intel_pstates позволяет работать с аппаратными состояниями процессоров, в отличие от cpufreq, работающего с более ограниченным набором состояний ACPI, и поддерживает специфические для процессоров алгоритмы управления, позволяя операционной системе более точно определять, в каком Си-состоянии должна находиться платформа для обеспечения максимально времени работы батарей. Проверить используемый драйвер можно командой:
Интерфейс | Допустимые значения | Описание |
---|---|---|
no_turbo | 0 или 1 | Разрешение/запрещение режима CPU Turbo Boost. Значение 1 запрещает этот режим |
max_perf_pct | 0% - 100% | Максимально допустимая частота процессора. По умолчанию 100%. Значение 0% переводит систему в режим LFM (минимально возможной рабочей частоты). |
min_perf_pct | 0% - 100% | Минимально допустимая частота процессора. По умолчанию 20%. Значение 100% переводит систему в режим HFM (максимально возможной рабочей частоты). |
Работа с PowerTOP
Параметры запуска:
Команда | Описание |
---|---|
sudo powertop | Интерактивный режим работы. См. ниже. |
sudo powertop --html[=ИМЯ_ФАЙЛА] | Генерация отчёта в формате HTML. Если ИМЯ_ФАЙЛА не задано - отчёт сохраняется в файле powertop.html. |
sudo powertop --csv[=ИМЯ_ФАЙЛА] | Генерация отчёта в формате CSV. Если ИМЯ_ФАЙЛА не задано - отчёт сохраняется в файле powertop.csv. |
sudo powertop --debug | Запуск режима отладки. Измерения для каждого устройства выполняются 750 раз, по методу наименьших квадратов определяется пригодность измерений, выводится список устройств с их относительными рейтингами. Рейтинги применяются для оценки энергопотребления каждым устройством. |
sudo powertop --calibrate | Выполняется серия измерений с применением различных настроек режимов ожидания для различных устройств. Режим полезен при оценке настроек яркости экрана. |
sudo powertop --auto_tune | Включает все опции энергосбережения (изменения действуют до перезагрузки системы). |
sudo powertop --workload=ИМЯ_ФАЙЛА | Оценка энергопотребления под нагрузкой. ИМЯ_ФАЙЛА задаёт двоичный исполнимый файл, использующийся в качестве нагрузки. |
sudo powertop --extech=УСТРОЙСТВО | Режим работы с подключенным анализатором мощности. |
Дополнительные опции:
Опция | Описание |
---|---|
--version | Вывести версию программы |
--time[=x] | Создать отчет за х секунд |
--iteration[=x] | Выполнить х итераций |
--quiet | Запретить вывод ошибок |
--help | Справка по программе |
Работа в интерактивном режиме
Закладка Overview
Закладка "Overview" представляет список наиболее энергопотребляющих объектов, заставляющих процессоры находиться в активном состоянии. Эта закладка показывает время использования, количество событий, тип и описание объекта, а способ понижения энергопотребления состоит в сокращении количества событий. Для корректной работы этой закладки должны быть выполнены следующие требования:
- Очищен каталог /var/cache/posertop/;
- Система должна работать только на батарейном питании, без подключения к постоянному источнику питания;
- Убедитесь, что в системе присутствует /sys/class/powecap/intel_rapl (в Astra Linux присутствует);
Для составления правильной модели энергопотребления PowerTOP дожен быть запущен несколько раз (необходимое количество запусков отображается при завершении работы программы).
После достаточного количества запусков результат сохраняется в файле /var/cache/powertop/saved_results.powertop.
Для запуска PowerTOP необходимое количество раз можно использовать, например, команду:for (( i=0 ; i<1000; i++ )) ; do sudo powertop –time=10 --html ; done
Закладка Idle Stats
Закладка "Idle Stats" отображает статистику Си-состояний представленных в системе центральных и графических процессоров. На платформах Intel отображается список Си-состояний соответствующих процессорам, ядрам и пакетам.
Закладка Frequency Stats
Закладка "Frequency Stats" отображает статистику состояний системы относительно состояния ожидания. Для полного отображения состояний, поддерживаемых процессорами Intel, рекомендуется использовать драйвер intel_idle. Кроме того, в настройках управления энергосбереженим должен быть указан режим, отличный от "performance", иначе будет отображаться только максимальная производительность процессоров.
Закладка Device Stats
Закладка "Device Stats" отображает список устройств, расходующих наибольшее количество энергии.
Закладка Tunables
Закладка "Tunables" отображает список устройств, представленных в системе. Устройства, не настроенные на режим энергосбережения, помечаются меткой "Bad", настроенные - меткой "Good". Настройки устройств можно переключать, при этом отображаются выполняющиеся при переключении команды. Сделанные изменения не становятся постоянными, и могут быть отменены перезагрузкой системы. Убедившись, что изменения настройки не делают систему нестабильной, нужно вручную сделать их постоянными.
Все доступные настройки могут быть переведены в состояние "Good" командой
TLP
Установка
Пакет tlp доступен в репозиториях Astra Linux:
- Astra Linux Special Edition x.7;
- Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.6 - начиная с оперативного обновления БЮЛЛЕТЕНЬ № 20200327SE16 (оперативное обновление 5);
Astra Linux Special Edition РУСБ.10015-16 исп. 1 и исп. 2
- Astra Linux Common Edition начиная с обновления 2.12.19;
- Для более ранних обновлений: для установки пакета подключить репозиторий Debian stretch-backport, а в Astra Linux Special Edition дополнительно подключить ещё репозиторий Astra Linux Common Edition:
При подключенных репозиториях установка пакета может быть выполнена командами:
- linux-tools - для управления напряжением электропитания процессора;
Если на компьютере предполагается использовать Удаленное включение компьютеров по сети, то следует запретить службе tlp отключение этой возможности. Для этого в конфигурационном файле /etc/default/tlp параметр конфигурации WOL_DISABLE привести к виду:
WOL_DISABLE=N
После установки сервис следует запустить командой:
Настройка
После изменения настроек для того, чтобы изменения вступили в силу следует перезапустить сервис командой:
Пример файла с комментариями см. в раскрывающейся вкладке:
LMT
Установка
На момент написания статьи пакет laptop-mode-tools не входит в дистрибутивы и репозитории Astra Linux. Для его установки на следует подключить репозиторий Debian stretch:
deb http://archive.debian.org/debian stretch main contrib non-free
После подключения репозиториев установка может быть выполнена командами:
Настройка
Основные параметры настройки LMT находятся в файле /etc/laptop-mode/laptop-mode.conf.
Кроме того, в каталоге /etc/laptop-mode/conf.d/ размещаются конфигурационные файлы ("модули") содержащие подробные комментарии по применению для различных платформ.
Каждый модуль содержит параметр CONTROL_*, и если в основном файле конфигурации /etc/laptop-mode/laptop-mode.conf указан параметр ENABLE_AUTO_MODULES=1, LMT пытается включить все свои модули, в которых параметру CONTROL_* присвоено значение "auto". Есть два исключения: модули auto-hibernate.conf и battery-level-polling.conf используют ENABLE_* вместо CONTROL_*.
Быстро проверить статус всех модулей можно командой
Работа с жесткими дисками
LMT может управлять остановкой жестких дисков (hdparm -S), что снижает энергопотребление и делает работу оборудования существенно тише. Поддерживается настройка упреждающего (read-ahead, hdparm -a) чтения, что позволяет останавливать диски чаще не прекращая работу компьютера. LMT может также управлять параметрами энергопотребления дисков (значения устанавливаются командой hdparm -B). Минимальное потребление соответствует значению 1 и максимальное значению 254. Например, можно использовать значения 254 для сетевого и 20 для батарейного питания. Если нормальная работа при этом замедляется в ожидании готовности дисков, можно для батарейного питания установить большее значение (например, 128) . Значения для hdparm -S и hdparm -B настраиваются в файле /etc/laptop-mode/laptop-mode.conf.
Опция CONTROL_MOUNT_OPTIONS (значение по умолчанию on), LMT автоматически перемонтирует дисковые разделы, применяя параметры монтирования commit=600,noatime. Параметр commit указывает программе записи журналов (jbd2) интервал записи журналов на диск (commit=600 указывает обращаться к диску раз в 10 минут вместо обращения каждые 5 секунд по умолчанию).
Работа с SSD-накопителями
Laptop-режим ядра сокращает количество записей, что повышает время жизни SSD, и укрупняет операции записи, что, позволяет использовать такие механизмы энергосбережения, как ALPM. Однако выигрыш сильно зависит от используемого оборудования.
Управление частотой процессора
Для управления частотой процессора нужны драйверы, поддерживающие эту возможность.
Параметры управления частотой процессора находятся в файле /etc/laptop-mode/conf.d/:
Устройства и шины
Intel SATA
Включение Intel SATA AHCI controller Aggressive Link Power Management: переключение диска в режим минимального энергопотребления в отсутствие операций ввода/вывода.
Режим подробно описан в комментариях к файлу /etc/laptop-mode/conf.d/intel-sata-powermgmt.conf
Автоматический режим ожидания USB
Режим описан в файле /etc/laptop-mode/conf.d/runtime-pm.conf. Устройства, которые используются всегда (например, мышь, подключенная к USB), должны быть внесены в список исключений.
Мониторы и графика
Яркость подсветки
Настраивается в файле /etc/laptop-mode/conf.d.
Доступные значения яркости для большинства ноутбуков могут быть получены командой
ThinkPad T40/T42
Для ноутбуков ThinkPad T40/T42 минимальное и максимальное значения яркости могут быть получены командами:
cat /sys/class/backlight/acpi_video0/max_brightness
ThinkPad T60
Для ноутбуков ThinkPad T60 минимальное и максимальное значения яркости могут быть получены командами:
cat /sys/class/backlight/thinkpad_screen/brightness
Очистка терминала
Файл /etc/laptop-mode/conf.d/terminal-blanking.conf:
Сети
Ethernet
Файл /etc/laptop-mode/conf.d/ethernet.conf:
Беспроводная сеть
Управление питанием беспроводных устройств сильно зависит от оборудования и потому сложнее в настройке. В зависимости от используемого чипсета настройки содержатся в одном из следующих файлов:
- /etc/laptop-mode/conf.d/wireless-power.conf для общих методов энергосбережения (используя "iwconfig wlan0 power on/off"), применимых для большинства чипсетов (кроме чипсетов Intel , см. ниже);
- /etc/laptop-mode/conf.d/wireless-ipw-power.conf для чипсетов Intel под управлением старого драйвера ipw. Это чипсеты IPW3945, IPW2200 и IPW2100. Используется iwpriv для IPW3945, и комбинация из iwconfig и iwpriv для IPW2100 и IPW220.См. подробнее в файле /usr/share/laptop-mode-tools/modules/wireless-ipw-power for details.
- /etc/laptop-mode/conf.d/wireless-iwl-power.conf для чипсетов Intel под управлением модулей iwl4965, iwl3945 и iwlagn (последний поддерживает чипсеты 4965, 5100, 5300, 5350, 5150, 1000, и 6000)
Допустимо одновременное включение всех трёх модулей, так как LMT проверяет используемое оборудование, и автоматически выбирает нужный модуль.
Имеются проблемы в работе с некоторыми чипсетами при использовании модуля iwlagn (чипсет 5300 и, возможно, другие). На таких чипсетах настройки IWL_AC_POWER и IWL_BATT_POWER из файла /etc/laptop-mode/conf.d/wireless-iwl-power.conf игнорируются, так как устройство /sys/class/net/wlan*/device/power_level не существует. Вместо этого автоматически используется стандартный метод ("iwconfig wlan0 power on/off") .
Audio
AC97
Файл /etc/laptop-mode/conf.d/ac97-powersave.conf:
Intel HDA
Файл /etc/laptop-mode/conf.d/intel-hda-powersave.conf: