Me gustaría configurar el regulador de escala de frecuencia de la CPU para todos los núcleos a la vez en lugar de hacerlo individualmente para cada núcleo. ¿Hay alguna forma de hacer esto?
(Sé que sería fácil hacerle eco al gobernador /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
, pero no estoy buscando una solución personalizada).
Respuestas:
Todavía soy un novato de Linux, pero ¿no crees que cpufrequtils te permite hacerlo usando (no está incluido en el sistema operativo Ubuntu pero está allí en el repositorio)
-r
indicador se usa para establecer el cambio para todos los núcleos ("todos relacionados con el hardware")fuente
cpufreq-set
de hecho carece de una funcionalidad en última instancia simple pero necesaria. Muchas personas, como muestra claramente este contador de votos, simplemente no lo saben porque su descripción es simplemente engañosa para colmo.Busqué en Google mucho y creo que simplemente no es posible, así que agregué la siguiente línea a mi
.bashrc
:Ahora puedo ejecutar algo así
setgov ondemand
y todos los núcleos cambiarán al gobernador bajo demanda .fuente
El comando más corto para cambiar el gobernador de todos los núcleos es el siguiente:
Puede agregarlo a .bashrc como se mencionó htorque, tendrá que ejecutarlo como root
sudo setgov performance
:fuente
También podría agregar la finalización del código bash, mientras estamos en eso:
fuente
La forma en que configuré esto para que se mantenga, ya que el gobernador vuelve por defecto a ahorro de energía después de aproximadamente 30 segundos a partir de Ubuntu 16.04 o más reciente (estoy en Ubuntu Mate);
Ponga este (una línea de) código (gracias, cortesía de switch87 en la respuesta anterior)
en el archivo en el directorio
La mía es una línea sobre "salida 0" y sin comentarios, debajo de los comentados.
"rc.local" para aquellos que no saben, ejecuta el comando como sudo. Cualquier comando que parezca, para cambiar el gobernador, debe ejecutarse como sudo.
Permite que el gobernador vuelva a restablecer el ahorro de energía y ejecuta el código como sudo después de 60 segundos para volver a cambiarlo al rendimiento.
Cambie el "60" (en el código que copia) a cualquier tiempo (en segundos. 60 = 60 segundos = 1 minuto) que necesita para retrasar el comando y el "rendimiento" (en la parte del comando) a qué gobernador desea cambiar a.
Fuera de mis horas y horas de búsqueda, no he encontrado una solución más permanente para esto que esto. Me imagino que son unos minutos que está en PowerSave si esta es la mejor solución que he encontrado, ¿verdad? Correcto.
No es la mejor solución, pero lo hace algo permanente después de hacerlo, es un pequeño cambio a la cosa de ahorro de energía. Si quieres arrancar y saltar a un juego o algo así, tendrás que esperar un minuto por el código que acabas de poner para volver a activar el ahorro de energía o reducir el tiempo (dependiendo del tiempo que tarde todo para iniciar para que vuelva al rendimiento correctamente).
Y, como siempre, para volver a los valores predeterminados (he visto algunos problemas con el sobrecalentamiento de las PC de las personas, por lo que podrían haberlo omitido en PowerSave en primer lugar) simplemente elimine el código de rc.local y reinicie o vuelva a encenderlo manualmente con su conmutador indicador de icono de CPU o ejecutar;
en la terminal y / o reiniciar.
fuente
Puede hacer esto para todos los núcleos a la vez ejecutando
fuente
Basándome en la respuesta de switch87, hice un script simple
cpufreq-set-all
, que permitirá hacer otrascpufreq-set
cosas con todas las CPU:Ahora se puede invocar (después
chmod +x
, por supuesto) así:o
fuente