J'ai presque essayé toutes les solutions pour augmenter la fréquence du processeur mais sans succès. J'ai un Intel Core i5-3210m 2.5Ghz-3.1Ghz. Je veux le mettre en permanence à 1,6Ghz sans turbo boost pour améliorer les timings de la batterie. Merci de me dire si cela est possible avec le pilote intel_pstate.
Réponse
Trop de publicités?Pour limiter la fréquence supérieure du CPU à 52% avec le pilote intel_pstate, procédez comme suit :
echo "52" | sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct
Note 1 : En calculant 52%, j'ai supposé que vous aviez activé le turbo, pour un état p maximal de 31. Par conséquent, 1,6 / 3,1 = 52 %. Si vous avez désactivé le turbo, le chiffre serait de 64 %. Il n'est pas nécessaire de désactiver spécifiquement le turbo, car avec cette limite, il n'entrera jamais dans la plage du turbo de toute façon.
Note 2 : En fonction de vos applications et de votre processeur, la limitation de la fréquence du CPU peut ne pas se traduire par une durée de vie plus longue de la batterie. Dans certains cas, l'exécution plus rapide d'une tâche, grâce à une fréquence de CPU plus élevée, et donc la possibilité pour certains CPU de se mettre en veille profonde (état C le plus élevé) plus tôt et plus longtemps, peut se traduire par une réduction de la consommation d'énergie en général.
Note 3 : La solution n'est pas permanente, et le réglage sera perdu au redémarrage. Je vous suggère d'essayer pendant un certain temps, de faire un rapport et nous pourrons alors réfléchir à la manière de rendre cette solution permanente. Il existe d'autres outils de plus haut niveau pour cela, mais je ne les utilise jamais. Quelqu'un d'autre pourrait fournir une autre réponse impliquant les outils de niveau supérieur.
Un exemple (processeur différent, chiffres différents). Le processeur 7 est chargé à 100 % :
Avant de régler la limite supérieure de la fréquence :
$ grep MHz /proc/cpuinfo
cpu MHz : 3697.234
cpu MHz : 3655.796
cpu MHz : 3699.890
cpu MHz : 3742.257
cpu MHz : 3613.562
cpu MHz : 3670.273
cpu MHz : 3628.968
cpu MHz : 3799.898
Limitez maintenant la fréquence supérieure et vérifiez-la :
$ echo "50" | sudo tee /sys/devices/system/cpu/intel_pstate/max_perf_pct
50
$ cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
50
$ grep MHz /proc/cpuinfo
cpu MHz : 1899.882
cpu MHz : 1900.015
cpu MHz : 1899.882
cpu MHz : 1893.906
cpu MHz : 1899.351
cpu MHz : 1900.015
cpu MHz : 1899.750
cpu MHz : 1899.882
EDIT : Surveillez le backporting des changements du pilote intel_pstate pour votre noyau de base, quel qu'il soit. Je sais que le backporting est en cours, mais je ne connais pas les délais de publication.
Pour que le changement se produise toujours au démarrage, il faut d'abord en faire un script, par exemple :
$ cat set_cpu_max_perf_pct
#! /bin/bash
echo 52 >/sys/devices/system/cpu/intel_pstate/max_perf_pct
echo -n "intel_pstate maximum performance request is (percent): "
cat /sys/devices/system/cpu/intel_pstate/max_perf_pct
Testez le script, en l'exécutant en tant que sudo. Ensuite, reportez-vous à l'une des nombreuses autres questions et réponses qui traitent de l'exécution du script au démarrage. Dites, celui-ci .
Vous pouvez également installer des outils tels que TLP qui ont ces réglages dans le fichier de configuration avec les paramètres pour la batterie ou le courant alternatif et l'interrupteur automatique.