Configuración del regulador de la CPU a pedido o conservador

32

Estoy luchando con cpupowerArchLinux. Quiero establecer gobernador ondemando incluso conservative.

Primero si lo hago $ sudo cpupower frequency-info --governors, solo consigo performance powersave.

Así que busco módulos disponibles como este

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

... y consigo

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

Entonces, en primer lugar, parece que no hay módulos disponibles para "ondemand". ¿Qué extraño?

Luego trato de habilitar al menos conservador:

$ sudo modprobe cpufreq_conservative

luego verifico que el módulo está realmente cargado

$ lsmod | grep cpufreq

y verifique si ahora está disponible

$ sudo cpupower frequency-info --governors

pero desafortunadamente sigo obteniendo lo mismo: performance powersavesolo, y si trato de habilitar conservador

$ sudo cpupower frequency-set -g conservative

Dice que el módulo no está disponible.

Así que básicamente tengo dos preguntas:

  1. ¿Qué necesito instalar para tener un módulo a pedido?
  2. ¿Cómo puedo habilitarlo?
lviggiani
fuente
1
Depende de su CPU, pero es probable que se cargue automáticamente. Ver la entrada de Arch Wiki .
jasonwryan
¿podría agregar el resultado de sudo cpupower frequency-infosu pregunta? Suelta el --governorspara mostrar todos los detalles.
bsd

Respuestas:

36

Asumiendo que su gobernador es intel_pstate (predeterminado para las CPU Intel Sandy Bridge e Ivy Bridge a partir del kernel 3.9). Este problema no es específico de Arch, pero todas las distribuciones usan el nuevo controlador Intel pstate para administrar la frecuencia de CPU / administración de energía. Escalado de frecuencia de CPU Arch Linux .


Theodore Ts'o escribió su explicación en Google+ :

  • intel_pstate puede deshabilitarse en el arranque con kernel arg intel_pstate=disable
  • El problema con el gobernador bajo demanda es que no conoce las capacidades específicas de la CPU
  • La ejecución de algunas tareas con una frecuencia más alta consumirá menos energía que una frecuencia más baja, lo que llevaría más tiempo, por ejemplo, cosas aritméticas, pero no es cierto para todas las tareas, por ejemplo, cargar algo de la memoria
  • El controlador intel_pstate conoce los detalles del funcionamiento de la CPU y funciona mejor que la solución ACPI genérica.
  • intel_pstate ofrece solo dos gobernadores, powersavey performance. Intel afirma que intel_pstate "powersave" es más rápido que el gobernador genérico acpi con "rendimiento"

Para volver a cambiar al controlador ACPI, reinicie y configure el argumento del núcleo. intel_pstate=disable
Luego, ejecute modprobe acpi-cpufreqy debería tener el gobernador bajo demanda disponible.

Puede hacer que los cambios sean permanentes editando /etc/default/gruby agregando

GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=disable"

Y luego actualizando grub.cfgalagrub-mkconfig -o /boot/grub/grub.cfg

Siga las instrucciones para cargar el módulo del kernel de Arch y agregue el acpi-cpufreqmódulo.

bsd
fuente
En primer lugar, gracias por la explicación. Está claro ahora. Me quedaré con el intel_pstate que ahora me suena bien. Estoy usando TLP para controlar el ahorro de energía en mi computadora portátil. Lo configuré para usar "powersave" en modo batería y "rendimiento" en CA. Como "performance" ejecutará la CPU @ su frecuencia máxima todo el tiempo, ¿ve algún problema con esto? (es decir, sobrecalentamiento CPU o cualquier otra situación que puede conducir a problemas de HW)
lviggiani
Creo que, en general, las computadoras portátiles deben limpiarse regularmente, desarmarse parcialmente para obtener aire comprimido y expulsar el polvo, la suciedad y el pelo de gato. No hay necesidad de rendimiento el 100% del tiempo solo porque uno está encendido, por lo general, un buen plan equilibrado aumentará la CPU según sea necesario.
bsd
1
Hay una diferencia entre el gobernador acpi genérico performancey intel_pstate performance, ¿verdad? ¿El último es más rápido que el anterior y el intel_pstate powersave?
tsorn