21 мар. 2014 г.

Регулирование частоты CPU (энергосбережение) в Linux Debian

CPU загружен полностью не всегда, потому для повышения энергосбережения современные поколения процессоров позволяют уменьшать свою частоту во время простоя. В Windows Vista, 7, 8 этот принцип реализован по-умолчанию (включается/выключается в настройках BIOS), а в OS Linux для этого нужно установить специального демона cpufrequtils:

aptitude install cpufrequtils

Он запустится и по-умолчанию в нем настроен т. н. governor (регулятор) управления частотой ondemand. Регуляторы бывают:
  • performance, производительность (по умолчанию). Этот регулятор встроен в ядро и заставляет работать CPU с максимальной скоростью; 
  • ondemand. Динамически изменяет частоту процессора в зависимости от нагрузки на систему (повышает частоту при достижении 95% нагрузки на текущей частоте); 
  • conservative. Похоже на регулятор ondemand, разница лишь в том, что повышает частоту при достижении 75% нагрузки на текущей частоте; 
  • powersave. Выставляет минимальную частоту для процессора; 
  • userspace. Пользователь выставляет частоту вручную. 
Задать регулятор можно в файле /etc/default/cpufrequtils (если его нет, нужно создать), например:

# valid values: userspace conservative powersave ondemand performance 
# get them from cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
GOVERNOR="conservative"


Также не забываем включить демона в автозагрузку:

update-rc.d cpufrequtils defaults

Для Gnome 3 shell можно установить дополнение, которое будет показывать в верхней строке состояния текущую частоту и даст возможность менять регулятор "на лету" мышкой.

Заходим сюда - https://extensions.gnome.org/extension/47/cpu-frequency/ и включаем регулятор вверху справа в On.


Этим мы установим дополнение, но активировать его нужно в апплете Advanced Settings (пакет gnome-tweak-tool):


Результат:


Ссылки: