Cpufrequtils (Русский)

From ArchWiki

Jump to: navigation, search


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

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

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

Contents

[edit] Установка

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

# pacman -S cpufrequtils

[edit] Настройка

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

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

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

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

Для большинства современных ноутбуков и настольных компьютеров можно использовать драйвер 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.

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

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

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

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

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

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

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

# cpufreq-set -g ondemand

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

[edit] Режим демона

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)

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

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

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

Personal tools