Cpufreq

Материал из ALT Linux Wiki
Версия от 18:43, 29 декабря 2013; IvanZakharyaschev (обсуждение | вклад) (→‎Ссылки: А как проверить частоту из командной строки, без графики?)

Включение автоматической регулировки частоты процессора в зависимости от нагрузки без использования спецсервисов типа cpuspeed, powernowd, etc.

Чтобы включить автоматическую регулировку частоты процессора надо поместить в /etc/modules следующую строку:

cpufreq_ondemand

Так же туда надо прописать подходящий модуль для вашего процессора. Например,

  • для AMD Athlon 64 X2:
powernow_k8
  • для Intel Atom N270:
acpi_cpufreq

Остальные варианты можно посмотреть тут.

Если всё сделано правильно, то после перезагрузки профиль ondemand должен присутствовать в числе возможных:

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
ondemand userspace performance

Он же должен быть текущим используемым профилем:

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
ondemand

Если же всё равно используется профиль performance:

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
performance

и частота процессора всегда максимальна в не зависимости от нагрузки, то необходимо прописать в /etc/sysfs.conf (необходимо предварительно установить sysfsutils) следующие строки (пример для процессора с двумя ядрами):

devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand
devices/system/cpu/cpu1/cpufreq/scaling_governor = ondemand

По моим наблюдениям если в /etc/sysfs.conf после этих строк не поставить перевод строки то как минимум к последнему CPU политика не будет применяться.

Проверка частоты

Когда мы настраиваем регулировку частоты, интересно проверять, какая сейчас на самом деле частота.

Это умеют показывать всякие аплеты для power management для графических сред.

А как проверить частоту из командной строки, без графики?

Ссылки

См. также. Другие близкие и нерешённые задачи

Регулировка мощности по температуре, а не по загрузке (TODO)

  • en:How to keep the GPU (and CPU) cooler -- Среди прочего, там высказывается интерес к механизму управления мощностью центрального процессора, который бы регулировался текущей температурой, а не загрузкой (как в случае с обычными governors). Такой механизм работает в nouveau для GPU NVidia. Например, мне удобен режим ondemand, но также передо мной стоит задача не дать нагреться выше некой температуры. Я бы хотел указывать температуру, при нагревании до которой сбрасывается мощность. Всё время сидеть на powersave не хочется, конечно. (Если вам известно о таком механизме, опишите пожалуйста! Было бы полезно уметь это делать.)