Дерево страниц

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 4 Следующий »



Данная статья является адаптированным к особенностям Astra Linux переводом документации на инструменты командной строки для управления энергосбережением:

Данные инструменты выполняют сходные функции и несовместимы между собой.
Использовать следует только один из них.

Данная  статья применима к:

  • ОС ОН Орёл 2.12
  • ОС СН Смоленск 1.6

Общие сведения

TLP

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

Замечание: TLP работает на всех моделях ноутбуков, однако установка порогов зарядки батарей доступна только на IBM/Lenovo ThinkPads.

Настройки, зависящие от источника питаний

  • Laptop-режим ядра и таймауты "грязных" буферов;
  • Изменение частоты процессоров включая "turbo boost" / "turbo core";
  • Ограничение минимальных/максимальных режимов энергопотребления для контроля нагрева процессоров ( только intel_pstate);
  • Поддержка технологии управления энергопотреблением HWP (Технология HWP позволяет процессорам самостоятельно выбирать свою скорость работы без использования множителей частоты, обеспечивая более быстрое реагирование);
  • Поддержка политик баланса производительности/энергосбережения (x86_energy_perf_policy);
  • Расширенное управление электропитанием НЖМД (Advanced Power Magement leve,l(APM) и индивидуальное управлением остановкой дисков;
  • Управление электропитанием периферийных утройств в соответствии со стандартом AHCI (Link Power Management, ALPM) с поддержкой списков устройств;
  • Управление в соответствии со стандартом AHCI рабочим питанием контроллеров и накопителей (экспериментальная возможность)
  • Управление активным состоянием шины PCIe (PCIe active state power management, ASPM);
  • Управление рабочим питанием устройств, подключенных к шине  PCIe;
  • Ограничение частот графических карт Intel;
  • Управление питанием графических карт AMD Radeon GPU (KMS and DPM)
  • Режим энергосбережения Wifi;
  • Подключение/отключение интегрированных беспроводных устройств (за исключением находящихся на связи)
  • Отключение оптических приводов;
  • Режим энергосбережения для аудио устройств.

Дополнительные настройки

  • Планировщик ввода/вывода индивидуально для каждого носителя;
  • Автоматический перевод в режим ожидания устройств USB с черным/белым списками и автоматическим исключением устройств ввода;
  • Подключение/отключение интегрированных устройств wifi, bluetooth, wwan при старте/выключении систмы;
  • Восстановление сохранённого при выключении системы состояния беспроводных устройств при старте системы;
  • Управление беспроводными устройствами: переключение по подключению/отключению  к сети или доку;
  • Запрет пробуждения по сети (Wake On LAN);
  • Восстановление состояния интегрированных устройств WWAN и bluetooth после режимов ожидания/гитернации;
  • Пороги зарядки батарей и рекалибровка батарей (только ThinkPad-ы);

laptop-mode-tools

TLP

Установка

На момент написания статьи пакет tlp не входит в дистрибутивы и репозитории Astra Linux. Для его установки на ОС ОН Орёл 2.12 или ОС СН Смоленск 1.6 следует подключить репозиторий Debian stretch-backport:


deb http://ftp.debian.org/debian stretch-backports main

В ОС СН Смоленск 1.6 дополнительно понадобится подключить ещё репозиторий Орёл:


deb https://download.astralinux.ru/astra/current/orel/repository/ orel contrib main non-free

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

sudo apt update && sudo apt install tlp tlp-rdw
Дополнительно для использования всех возможностей можно установить еще пакет linux-tools (см. комментарии в файле конфигурации).

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

sudo systemctl start tlp
После перезагрузки системы сервис запускается автоматически.

Настройка

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

sudo tlp start
Параметры конфигурации TLP находятся  в файле /etc/default/tlp. В этом же файле находится ссылка на полную документацию.
Пример файла с комментариями см.:

# ------------------------------------------------------------------------------
# tlp - Параметры энергосбережения
# См. полной описание: http://linrunner.de/en/tlp/docs/tlp-configuration.html

# Замечание: некоторые возможности отключены по умолчанию, удалите лидирующий симовл # чтобы включить
# их.

# 0 - запретить, 1 - разрешить TLP.
TLP_ENABLE=1

# Режим работы когда источник питания (AC, BAT) не может быть определён.
# Используется для настольных компьютеров и встроенного оборудования.
TLP_DEFAULT_MODE=AC

# Выбор режима работы: 0=в зависимости от источника питания, 1=всегда режим TLP_DEFAULT_MODE
# Замечание: используйте TLP_DEFAULT_MODE=BAT для перехода в режима работы от батарей (BAT) при работе от сети (AC).
TLP_PERSISTENT_DEFAULT=0

# Для laptop-режим ядра время ожидания (секунды) после простоя диска до повторной синхронизации "грязных" страниц.
# Ненцлевое значение включает laptop-режим ядра, нулевое отключает laptop-режим ядра.
DISK_IDLE_SECS_ON_AC=0
DISK_IDLE_SECS_ON_BAT=2

# Время ожидания до записи файловых данных на диск (секунд).
MAX_LOST_WORK_SECS_ON_AC=15
MAX_LOST_WORK_SECS_ON_BAT=60

# Замечание: нижеуказанные параметры процессора CPU по умолчанию отключены, удалите #
# для их применения, иначе будут использованы значения ядра.

# Выбор способа вправления частотой процессора.
# Процессор Intel Core i с драйвером intel_pstate:
# powersave(*), performance.
# Более старое оборудование с драйвером  acpi-cpufreq:
# ondemand(*), powersave, performance, conservative, schedutil.
# Рекомендованый вариант отмечен как (*).
# Замечание: используйте команду tlp-stat -p для просмотра активного драйвера и доступных спосоов управления.
# Важно:
# режимы powersave для intel_pstate и ondemand для acpi-cpufreq эффективны
# практически для всех видов нагрузки и поэтому ядро в боьшинстве случаев
# выбирает их "по умолчанию". Если вы хотите изменить режимы,
# вы должны понимать, что делаете! Вы *обязаны* отключить режимы из
# вашего дистрибутива, инача произоёдёт конфликт настроек.
#CPU_SCALING_GOVERNOR_ON_AC=powersave
#CPU_SCALING_GOVERNOR_ON_BAT=powersave

# Устанавливает минимальное/максимальное значения частоты, доступное для установки.
# Возможные значения сильно зависят от используемого процессора. Доступные частоты можно
# проверить командой tlp-stat -p.
#CPU_SCALING_MIN_FREQ_ON_AC=0
#CPU_SCALING_MAX_FREQ_ON_AC=0
#CPU_SCALING_MIN_FREQ_ON_BAT=0
#CPU_SCALING_MAX_FREQ_ON_BAT=0

# Установка баланса (HWP) для режима Intel P-state:
# performance, balance_performance, default, balance_power, power
# Значения даны в порядке роста энергосбережения.
# Замечание: Необходим процессор Intel Skylake или более новый и ядро версии >= 4.10.
CPU_HWP_ON_AC=balance_performance
CPU_HWP_ON_BAT=balance_power

# Установка производительности Intel P-state: 0..100 (%).
# Ограничивает минимальное/максимальное состояние  P-state для управление тепловыделением процессора.
# Значения представляются как проценты доступной производительности.
# Необходим процессор Intel Core i с драйвером intel_pstate.
#CPU_MIN_PERF_ON_AC=0
#CPU_MAX_PERF_ON_AC=100
#CPU_MIN_PERF_ON_BAT=0
#CPU_MAX_PERF_ON_BAT=30

# Установка режима процессора "turbo boost": 0=запрещён, 1=разрешён
# Необходим процессор Intel Core i.
# Важно:
# - Эта установка может конфликтовать с настройками дистрибутива.
# -Значене 1не включает разгон, а только разрешает его.
#CPU_BOOST_ON_AC=1
#CPU_BOOST_ON_BAT=0

# Минимизация количества используемых ядер/потоков процессоров при низких нагрузках
# 0=запрещена, 1=разрешена.
SCHED_POWERSAVE_ON_AC=0
SCHED_POWERSAVE_ON_BAT=1

# Контроль зависаний системы (Kernel NMI Watchdog):
# 0=отключен (по умолчанию, энергосберегающий режим), 1=включен (только для отладки ядра).
NMI_WATCHDOG=0

# Снижение напряжения питания процессора ("undervolting") - требуется ядро с патчем PHC.
# Пары частота/напряжение записываются в:
# /sys/devices/system/cpu/cpu0/cpufreq/phc_controls
# Предупреждение: используйте это только если понимаете, что делаете!
#PHC_CONTROLS="F:V F:V F:V F:V"

# Выбор политики баланса энергопотребдения/производительности процессора:
# performance, balance-performance, default, balance-power, power.
# Значения даны в порядке роста энергосбережения.
# Требуются модуль ядра msr и инструмент x86_energy_perf_policy из пакета linux-tools, соответствующего используемой версии ядра.
ENERGY_PERF_POLICY_ON_AC=performance
ENERGY_PERF_POLICY_ON_BAT=power

# Список контролируемых дисковых устройств; разделяются пробелами (по умолчанию: sda).
# Устройства также могут быть заданы идентификатором (команда: tlp diskid).
DISK_DEVICES="sda sdb"

# Уровень расширенного управления питанием дисков : 1..254, 255 (максимальное энергосбережение, минимальное, отключено).
# Уровни 1..127 могут замедлить работу диска; 255 применимо к большинству устройств.
# Значения для разных дисков разделяются пробелами. Используйте специальное значение 'keep'
# для сохранения аппаратных умолчаний.
DISK_APM_LEVEL_ON_AC="254 254"
DISK_APM_LEVEL_ON_BAT="128 128"

# Таймаут остановки вращения дисков:
# 0: spin down disabled
# 1..240: timeouts from 5s to 20min (in units of 5s)
# 241..251: timeouts from 30min to 5.5 hours (in units of 30min)
# См. 'man hdparm' для подробностей.
# Значения для разных дисков разделяются пробелами. Используйте специальное значение 'keep'
# для сохранения аппаратных умолчаний.
#DISK_SPINDOWN_TIMEOUT_ON_AC="0 0"
#DISK_SPINDOWN_TIMEOUT_ON_BAT="0 0"

# Выбор планировщика для дисков: cfq, deadline, noop (По умолчанию: cfq).
# Значения для разных дисков разделяются пробелами. Используйте специальное значение 'keep'
# для сохранения планировщика, выбранного ядром по умолчанию.
#DISK_IOSCHED="cfq cfq"

# Управление питанием периферии AHCI link power management (ALPM) для дисковых устройств:
# min_power, med_power_with_dipm(*), medium_power, max_performance.
# (*) Требуется версия ядра >= 4.15, рекомендуется более поздняя.
# Значения разделяются пробелами, и применяются последовательно до успеха.
SATA_LINKPWR_ON_AC="med_power_with_dipm max_performance"
SATA_LINKPWR_ON_BAT="med_power_with_dipm min_power"

# Исключение host-устройств из AHCI link power management.
# Имена разделяются пробелами.
#SATA_LINKPWR_BLACKLIST="host1"

# Управление рабочим питанием для AHCI host- и  дисковых устойств:
# on=отключить, auto=включить.
# ТЕСТИРУЕТСЯ **Предупреждение: auto вероятно приведёт к зависанию системы.
#AHCI_RUNTIME_PM_ON_AC=on
#AHCI_RUNTIME_PM_ON_BAT=on

# Время неактивности (секунды) до перевода диска в режим ожидания.
AHCI_RUNTIME_PM_TIMEOUT=15

# Управление питанием шины PCI (PCIe ASPM):
# default, performance, powersave.
PCIE_ASPM_ON_AC=performance
PCIE_ASPM_ON_BAT=powersave

# Частота видеокарт Radeon (profile method): low, mid, high, auto, default;
# auto = mid on BAT, high on AC; default = use hardware defaults.
RADEON_POWER_PROFILE_ON_AC=high
RADEON_POWER_PROFILE_ON_BAT=low

# Динамическое управления питанием видеокарт Radeon (DPM): battery, performance.
RADEON_DPM_STATE_ON_AC=performance
RADEON_DPM_STATE_ON_BAT=battery

# Уровень производительности Radeon DPM: auto, low, high; рекомендуется auto.
RADEON_DPM_PERF_LEVEL_ON_AC=auto
RADEON_DPM_PERF_LEVEL_ON_BAT=auto

# Режим энергосбережения WiFi: on=включен, off=выключен; поддерживается не всеми адаптерами.
WIFI_PWR_ON_AC=off
WIFI_PWR_ON_BAT=on

# Запрет пробуждения по сети (wake on LAN): Y/N.
WOL_DISABLE=Y

# Включение энергосбережения для аудио устройств Intel HDA, AC97 (таймаут в секундах).
# Значение 0 выключает, >=1 включает энергосбережение (рекомендуется 1).
SOUND_POWER_SAVE_ON_AC=0
SOUND_POWER_SAVE_ON_BAT=1

# Отключение и контроллера тоже (толко HDA): Y/N.
SOUND_POWER_SAVE_CONTROLLER=Y

# Управление питанием привода оптических дисков UltraBay/MediaBay: 0=отключено, 1=включено.
# Привод может быть запитан повторно извлечением и повторной загрузкой лотка
# или нажатием кнопки выброса диска на новых моделях.
# Замечание: жесткие диски UltraBay/MediaBay не отключаются никогда.
BAY_POWEROFF_ON_AC=0
BAY_POWEROFF_ON_BAT=0
# Оптические приводы для отключения (по умолчанию sr0).
BAY_DEVICE="sr0"

# Управление рабочим питанием устройств PCI(e) : on=разрешено, auto=не разрешено.
RUNTIME_PM_ON_AC=on
RUNTIME_PM_ON_BAT=auto

# Адреса устройств PCI(e), исключаемых из управления.
# (разделяются пробелами). Для получения адресов спользуйте команду  lspci (1-й столбец).
#RUNTIME_PM_BLACKLIST="bb:dd.f 11:22.3 44:55.6"

# Драйверы устройств PCI(e), исключаемых из управления.
# По умолчанию "amdgpu nouveau nvidia radeon" что предотвращает
# случайное включение дисеретных видеокарт в гибридных конфигурациях.
# Используйте "" для полного отключения. Команда tlp-stat -e для получения списка.
# Имена разделяются пробелами.
#RUNTIME_PM_DRIVER_BLACKLIST="amdgpu nouveau nvidia radeon"

# 0 для отключение, 1 для включения атоматического перевода устройств USB в режим ожидания.
USB_AUTOSUSPEND=1

# Исключение перечисленных устройств (разделяются пробелами).
# Команда lsusb для получения идентификаторов.
# Замечание: устройства ввода (usbhid) исключаются автоматически.
#USB_BLACKLIST="1111:2222 3333:4444"

# Исключение устройств Bluetooth из автоматического перевода в режим ожидания:
# 0=не исключать, 1=исключить.
USB_BLACKLIST_BTUSB=0

# Исключение телефонов Phone из автоматического перевода в режим ожидания:
# 0=не исключать, 1=исключить (позволяет заряжать устройства).
USB_BLACKLIST_PHONE=0

# Исключение принтеров:
# 0=не исключать, 1=исключить.
USB_BLACKLIST_PRINTER=1

# Исключение устройств WWAN:
# 0=не исключать, 1=исключить.
USB_BLACKLIST_WWAN=1

# Включение преречисленных устройств в список управляемых даже если они уже исключены
# в списках выше.
# Команда lsusb для получения идентификаторов.
#USB_WHITELIST="1111:2222 3333:4444"

# 1 для отключения перевода в режим ожидания перед выключением системы, 0 ничего не менять
# (для устройств, создающизх пробелмы при отключении системы).
#USB_AUTOSUSPEND_DISABLE_ON_SHUTDOWN=1

# Восстановление сохранённого при предыдущем выключении системы состояния устройств (Bluetooth, WiFi, WWAN)
# при запуске системы: 0=отключено, 1=включено.
# Замечание: параметры DEVICES_TO_DISABLE/ENABLE_ON_STARTUP/SHUTDOWN ниже
# игнорируются, когда восстановление включено этим параметром!
RESTORE_DEVICE_STATE_ON_STARTUP=0

# Беспроводные устройства для отключения при старте системы: bluetooth, wifi, wwan.
#DEVICES_TO_DISABLE_ON_STARTUP="bluetooth wifi wwan"

# Беспроводные устройства для включения при старте системы: bluetooth, wifi, wwan.
#DEVICES_TO_ENABLE_ON_STARTUP="wifi"

# Беспроводные устройства для отключения при выключении системы: bluetooth, wifi, wwan.
# (для устройст, блокирующих отключение систмы).
#DEVICES_TO_DISABLE_ON_SHUTDOWN="bluetooth wifi wwan"

# Беспроводные устройства для включения при выключении системы: bluetooth, wifi, wwan.
# (чтобы другие ОС не теряли устройства).
#DEVICES_TO_ENABLE_ON_SHUTDOWN="wwan"

# Беспроводные устройства для включения при питании от сети: bluetooth, wifi, wwan.
#DEVICES_TO_ENABLE_ON_AC="bluetooth wifi wwan"

# Беспроводные устройства для выключения при питании от батареи: bluetooth, wifi, wwan.
#DEVICES_TO_DISABLE_ON_BAT="bluetooth wifi wwan"

# Беспроводные устройства для выключения при питании от батареи и неиспользовании (не находящиемся на связи): bluetooth, wifi, wwan.
#DEVICES_TO_DISABLE_ON_BAT_NOT_IN_USE="bluetooth wifi wwan"

# Пороги зарядки батарей (только ThinkPad, требуется модуль ядра tp-smapi или acpi-call.
# Зарядка начинается когда остаточная ёмкость батареи падает ниже
# START_CHARGE_THRESH и прекращается при превышении STOP_CHARGE_THRESH
# Главная / Внутренняя батарея (значения в %)
#START_CHARGE_THRESH_BAT0=75
#STOP_CHARGE_THRESH_BAT0=80
# Батареи Ultrabay / Slice / Replaceable battery (значения в %)
#START_CHARGE_THRESH_BAT1=75
#STOP_CHARGE_THRESH_BAT1=80

# Восстановление порогов зарадки при отключении сети: 0=отключено, 1=включено.
#RESTORE_THRESHOLDS_ON_BAT=1

# ------------------------------------------------------------------------------
# tlp-rdw - параметры управления беспроводными устройствами
# Возможные устройства: bluetooth, wifi, wwan.

# Замечание:
# - Параметры по умолчанию закомментированы, удалите # для использования
# - Разделитель - пробел

# Устройства для отключени при подключении
#DEVICES_TO_DISABLE_ON_LAN_CONNECT="wifi wwan"
#DEVICES_TO_DISABLE_ON_WIFI_CONNECT="wwan"
#DEVICES_TO_DISABLE_ON_WWAN_CONNECT="wifi"

# Устройства для включени при отключении
#DEVICES_TO_ENABLE_ON_LAN_DISCONNECT="wifi wwan"
#DEVICES_TO_ENABLE_ON_WIFI_DISCONNECT=""
#DEVICES_TO_ENABLE_ON_WWAN_DISCONNECT=""

# Устройства для включения/отключения при установке в док:
#DEVICES_TO_ENABLE_ON_DOCK=""
#DEVICES_TO_DISABLE_ON_DOCK=""

# Устройства для включения/отключения при извелечении из дока:
#DEVICES_TO_ENABLE_ON_UNDOCK="wifi"
#DEVICES_TO_DISABLE_ON_UNDOCK=""


laptop-mode-tools

Особенности

Установка

Настройка


  • Нет меток