Установка регулятора ЦП по требованию или консервативный

32

Я борюсь с cpupowerArchLinux. Я хочу установить губернатора ondemandили даже conservative.

Сначала, если я делаю $ sudo cpupower frequency-info --governors, я только получаю performance powersave.

Поэтому я ищу доступные модули, как это

ls -1 /lib/modules/`uname -r`/kernel/drivers/cpufreq/

... и я получаю

acpi-cpufreq.ko.gz
amd_freq_sensitivity.ko.gz
cpufreq_conservative.ko.gz
cpufreq_powersave.ko.gz
cpufreq_stats.ko.gz
cpufreq_userspace.ko.gz
p4-clockmod.ko.gz
pcc-cpufreq.ko.gz
powernow-k8.ko.gz
speedstep-lib.ko.gz

Итак, во-первых, никаких модулей для «ondemand», кажется, нет в наличии. Что мне не хватает?

Затем я пытаюсь включить хотя бы консервативный:

$ sudo modprobe cpufreq_conservative

тогда я проверяю, модуль действительно загружен

$ lsmod | grep cpufreq

и проверьте, доступен ли он сейчас

$ sudo cpupower frequency-info --governors

но, к сожалению, я все еще получаю то же самое: performance powersaveтолько, и если я пытаюсь включить консервативный

$ sudo cpupower frequency-set -g conservative

Это говорит о том, что модуль недоступен.

В общем, у меня есть два вопроса:

  1. Что мне нужно установить, чтобы иметь модуль ondemand
  2. Как я могу включить это?
lviggiani
источник
1
Зависит от вашего процессора, но, скорее всего, он загружается автоматически. Смотрите запись в Arch Arch .
Джейсонвриан
Не могли бы вы добавить вывод sudo cpupower frequency-infoна ваш вопрос. Оставьте, --governorsчтобы показать полную информацию.
BSD

Ответы:

36

Предполагается, что вашим регулятором является intel_pstate (по умолчанию для процессоров Intel Sandy Bridge и Ivy Bridge начиная с ядра 3.9). Эта проблема не относится только к Arch, но во всех дистрибутивах используется новый драйвер Intel pstate для управления частотой процессора / управлением питанием. Arch linux CPU Scaling .


Теодор Цо написал свое объяснение в Google+ :

  • intel_pstate может быть отключен во время загрузки с помощью arg ядра intel_pstate=disable
  • Проблема с регулятором ondemand заключается в том, что он не знает конкретных возможностей процессора.
  • При выполнении некоторых задач с более высокой частотой потребляется меньше энергии, чем при более низкой частоте, что занимает больше времени, например, арифметические операции, но не для всех задач, например, загрузки чего-либо из памяти
  • Драйвер intel_pstate знает детали того, как работает процессор, и он работает лучше, чем универсальное решение ACPI
  • intel_pstate предлагает только два управляющих, powersaveи performance. Intel утверждает, что intel_pstate «powersave» быстрее, чем универсальный регулятор acpi с «производительностью»

Чтобы вернуться к драйверу ACPI, перезагрузите компьютер и установите ядро ​​arg. intel_pstate=disable
Затем выполните, modprobe acpi-cpufreqи у вас должен быть доступный регулятор по требованию.

Вы можете сделать изменения постоянными, отредактировав /etc/default/grubи добавив

GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=disable"

А потом обновление grub.cfgаляgrub-mkconfig -o /boot/grub/grub.cfg

Следуйте инструкциям по загрузке модуля ядра Arch и добавьте acpi-cpufreqмодуль.

BSD
источник
Прежде всего, спасибо за объяснение. Теперь понятно. Я останусь с intel_pstate, который сейчас звучит хорошо для меня. Я использую tlp для управления энергосбережением на моем ноутбуке. Я установил его для использования «powersave» в режиме батареи и «performance» в переменном токе. Поскольку «производительность» будет постоянно запускать CPU @ max max, вы видите какие-либо проблемы с этим? (т.е. перегрев процессора или любая другая ситуация, которая может привести к проблемам с аппаратным обеспечением)
lviggiani
Я считаю, что в целом ноутбуки необходимо регулярно чистить, частично разбирать, чтобы в них входил сжатый воздух и выдували пыль, грязь и кошачьи волосы. Нет необходимости в производительности 100% времени только потому, что он включен, обычно хороший сбалансированный план запускает процессор по мере необходимости.
BSD
1
Есть разница между универсальным регулятором acpi performanceи intel_pstate performance, верно? Последний быстрее, чем первый и intel_pstate powersave?
Цорн