Cpufrequtils (Русский)

From ArchWiki

Jump to: navigation, search


i18n
English
Русский
Español
Português

Cpufrequtils — это набор утилит разработанных для поддержки функции масштабирования частоты процессора, технологии, преимущественно применяемой в ноутбуках, которая позволяет операционной системе увеличивать или уменьшать тактовую частоту процессора в зависимости от нагрузки на систему и/или схемы энергопотребления. Например мастабирование частоты процессора может сократить частоту 2 ГГц процессора до 1 ГГц когда ноутбук работает от батарей, продлевая таким образом время работы, снижая нагрев и уменьшая шум вентилятора.

При использовании совместно с Pm-utils, владельцы обеспечены полным набором утилит для управления энергопотреблением.

Contents

Установка

Пакет cpufrequtils доступен в репозитории Extra:

# pacman -S cpufrequtils

Настройка

Настройка масштабирования частоты производится в три этапа:

  1. загрузка соответствующего драйвера управления частотой процессора
  2. загрузка желаемого гувернёра масштабирования
  3. настройка и загрузка демона масштабирования частоты (опционально)

Драйвер управления частотой процессора

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

Для большинства современных ноутбуков и настольных компьютеров можно использовать драйвер acpi-cpufreq, однако есть ещё такие варианты как p4-clockmod, powernow-k6, powernow-k7, powernow-k8, и speedstep-centrino.

Для загрузки драйвера вручную:

# modprobe acpi-cpufreq

Для автоматической загрузки драйвера во время старта системы, добавьте соответствующий драйвер в массив MODULES в файле /etc/rc.conf. Например:

MODULES=( acpi-cpufreq vboxdrv fuse fglrx iwl3945 ... )

Когда загружен правильный драйвер cpufreq, вы можете посмотреть детальную информацию о вашем процессоре(ах) выполнив

$ cpufreq-info

Вот пример вывода cpufreq-info (на процессоре Intel Duo Core T2500):

analyzing CPU 0:
 driver: acpi-cpufreq
 CPUs which need to switch frequency at the same time: 0 1
 hardware limits: 1000 MHz - 2.00 GHz
 available frequency steps: 2.00 GHz, 1.67 GHz, 1.33 GHz, 1000 MHz
 available cpufreq governors: ondemand, performance
 current policy: frequency should be within 1000 MHz and 2.00 GHz.
                 The governor "performance" may decide which speed to use
                 within this range.
 current CPU frequency is 2.00 GHz.
analyzing CPU 1:
 driver: acpi-cpufreq
 CPUs which need to switch frequency at the same time: 0 1
 hardware limits: 1000 MHz - 2.00 GHz
 available frequency steps: 2.00 GHz, 1.67 GHz, 1.33 GHz, 1000 MHz
 available cpufreq governors: ondemand, performance
 current policy: frequency should be within 1000 MHz and 2.00 GHz.
                 The governor "performance" may decide which speed to use
                 within this range.
 current CPU frequency is 2.00 GHz.

Гувернёры масштабирования (схемы энергопотребления)

Гувернёры можно рассматривать как заранее сконфигурированые схемы энергопотребления процессора. Гувернёры должны быть загружены как модули ядра чтобы их могли видеть такие программы как kpowersave и gnome-power-manager. Вы можете загрузить столько гувернёров, сколько вам угодно, всё равно в любой момент времени активным будет только один.

Доступные гувернёры:

  • performance (по умолчанию) — гувернёр performance(производительность) встроен в ядро и поддерживает процессор(ы) на максимальной тактовой частоте
  • cpufreq_ondemand (рекомендуемый) — динамически увеличивает/уменьшает тактовую частоту процессора в зависимости от загруженности системы
  • cpufreq_conservative — похож на ondemand, но более экономный (предпочтение отдаётся меньшим тактовым частотам)
  • cpufreq_powersave — похож на conservative, но ещё более экономный
  • cpufreq_userspace — тактовая частота задаётся пользователем вручную

Добавьте необходимый гувернёр(ы) в массив MODULES в /etc/rc.conf (обязательно после модуля acpi-cpufreq) :

MODULES=(acpi-cpufreq cpufreq_ondemand cpufreq_powersave vboxdrv fuse fglrx iwl3945 ... )

Вы можете вручную установить гувернёра при помощи команды cpufreq-set (как root), однако это не сохранится после перезагрузки/выключения. Например:

# cpufreq-set -g ondemand

Запустите cpufreq-set --help или man cpufreq-set чтобы получить больше информации по этой команде.

Режим демона

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

Перед запуском демона, отредактируйте /etc/conf.d/cpufreq как root, выберите предпочтительный гувернёр и минимальную/максимальную частоту для вашего процессора(ов), например:

# конфигурационный файл cpufreq
# доступные гувернёры:
#  ondemand, performance, powersave,
#  conservative, userspace
governor="ondemand"

# доступные сокращения: Hz, kHz (default), MHz, GHz, THz
min_freq="1GHz"
max_freq="2GHz"

Примечание: точные минимальные/максимальные значения тактовой частоты для вашего процессора(ов) можно узнать запустив cpufreq-info после загрузки драйвера процессора как указано выше (например modprobe acpi-cpufreq). В любом случае эти значения опциональны. Вы можете вовсе избежать их использования удалив или закомментировав строки min/max_freq. Всё будет работать автоматически.

Позаботившись о конфигурационном файле, вы можете запустить демона командой

# /etc/rc.d/cpufreq start

Для автоматического запуска демона при загрузке системы добавьте cpufreq в массив DAEMONS в /etc/rc.conf, например:

DAEMONS=(syslog-ng hal cpufreq dhcdbd networkmanager !network !netfs @alsa @crond @cups @fam @ntpd @sshd)

Другие источники

SpeedStep — больше информации по масштабированию тактовой частоты (какая-то часть которой уже устарела)

Pm-utils — средства Hibernate/Suspend framework предоставленные сообществом OpenSUSE

Personal tools