web-dev-qa-db-fra.com

Le gouverneur de gestion de l'alimentation passe seul de powersave à la performance

J'ai donc des problèmes de surchauffe avec un HP Envy 15 qui me rend fou. Voir this et this pour référence.

Quoi qu'il en soit, j'ai fait une nouvelle installation d'Ubuntu 18.04. Également installé tlp et cpufrequtils. Donc, si je fais tlp stat -p ...

+++ Processor
CPU model      = Intel(R) Core(TM) i7-4510U CPU @ 2.00GHz

[....]

/sys/devices/system/cpu/cpu3/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu3/cpufreq/scaling_governor  = performance
/sys/devices/system/cpu/cpu3/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq  =  3100000 [kHz]
/sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq  =  3100000 [kHz]

/sys/devices/system/cpu/intel_pstate/min_perf_pct      =  25 [%]
/sys/devices/system/cpu/intel_pstate/max_perf_pct      = 100 [%]
/sys/devices/system/cpu/intel_pstate/no_turbo          =   0
/sys/devices/system/cpu/intel_pstate/turbo_pct         =  50 [%]
/sys/devices/system/cpu/intel_pstate/num_pstates       =  24

Maintenant, puisque je veux utiliser un gouverneur powersave, conformément à this , je peux l’utiliser.

+++ Processor
CPU model      = Intel(R) Core(TM) i7-4510U CPU @ 2.00GHz

[....]

/sys/devices/system/cpu/cpu3/cpufreq/scaling_driver    = intel_pstate
/sys/devices/system/cpu/cpu3/cpufreq/scaling_governor  = powersave
/sys/devices/system/cpu/cpu3/cpufreq/scaling_available_governors = performance powersave
/sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq  =  3100000 [kHz]
/sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq  =  3100000 [kHz]

/sys/devices/system/cpu/intel_pstate/min_perf_pct      =  25 [%]
/sys/devices/system/cpu/intel_pstate/max_perf_pct      = 100 [%]
/sys/devices/system/cpu/intel_pstate/no_turbo          =   0
/sys/devices/system/cpu/intel_pstate/turbo_pct         =  50 [%]
/sys/devices/system/cpu/intel_pstate/num_pstates       =  24

Jusqu'ici tout va bien.

Deux choses attirent mon attention:

  1. Si je recommence à utiliser mon ordinateur portable, je ne sais pas pourquoi, mais de temps en temps, le tlp stat -p montre à nouveau que le scaling_governor=performance.
  2. Pourquoi scaling_min_freq et scaling_max_freq sont-ils égaux? J'aimerais réduire les deux pour voir si je peux contrôler d'une manière ou d'une autre le problème de surchauffe auquel je suis confronté.

Comment puis-je éviter le gouverneur performance? Comment puis-je régler la mise à l'échelle min et max?

merci!

Lucas

2
Lucas Aimaretto

Force à powersave régulateur de vitesse

Vous utilisez Sudo tlp stat -p pour savoir quand le régulateur de vitesse est réglé sur le mode performance. Lorsque cela se produit, réinitialisez-le sur powersave avec cette commande:

$ echo "powersave" | Sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
powersave

Exécutez à nouveau les statistiques tlp et assurez-vous que la fréquence minimale est normalisée et qu'elle n'est plus définie sur la fréquence maximale.

Continuez à utiliser tlp pour connaître la fréquence de réinitialisation du régulateur en mode performance.

Continuez à chercher le programme qui réinitialise le régulateur de vitesse.

En dernier recours, vous pouvez:

  1. Configurez une procédure de veille pour réinitialiser sur powersave toutes les x secondes.
  2. Configurez une procédure qui surveille le régulateur de vitesse toutes les secondes et réinitialisez-le quand il change.
3
WinEunuuchs2Unix

Cette réponse est pour votre deuxième question:

Pourquoi scaling_min_freq et scaling_max_freq sont-ils égaux? J'aimerais réduire les deux pour voir si je peux contrôler d'une manière ou d'une autre le problème de surchauffe auquel je suis confronté.

Je ne sais pas comment ils sont parvenus à la même chose, mais quelque chose doit l'avoir fait. Pour limiter votre fréquence CPU maximale, lorsque vous utilisez le pilote de redimensionnement de la fréquence du processeur intel_pstate, procédez comme suit (à 70% par exemple):

$ echo 70 | Sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct

Exemple:

doug@s15:~/temp$ grep . /sys/devices/system/cpu/intel_pstate/*
/sys/devices/system/cpu/intel_pstate/max_perf_pct:100
/sys/devices/system/cpu/intel_pstate/min_perf_pct:42
/sys/devices/system/cpu/intel_pstate/no_turbo:0
/sys/devices/system/cpu/intel_pstate/num_pstates:23
/sys/devices/system/cpu/intel_pstate/status:active
/sys/devices/system/cpu/intel_pstate/turbo_pct:18
doug@s15:~/temp$ echo 70 | Sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct
70
doug@s15:~/temp$ grep . /sys/devices/system/cpu/intel_pstate/*
/sys/devices/system/cpu/intel_pstate/max_perf_pct:70
/sys/devices/system/cpu/intel_pstate/min_perf_pct:42
/sys/devices/system/cpu/intel_pstate/no_turbo:0
/sys/devices/system/cpu/intel_pstate/num_pstates:23
/sys/devices/system/cpu/intel_pstate/status:active
/sys/devices/system/cpu/intel_pstate/turbo_pct:18
1
Doug Smythies