web-dev-qa-db-fra.com

Mise à l'échelle de la fréquence du processeur Ubuntu 13.04 'bloquée' sur la fréquence la plus basse

Je viens d'installer Ubuntu 13.04 sur mon MacBook Air, après avoir joué pendant un certain temps, la machine semblant très lente, j'ai donc vérifié la fréquence du processeur. cpufreq-info, il signale 800 MHz sur les 4 cœurs (le réglage le plus bas). Le gouverneur est configuré pour demander. Maintenant, quand je mets un peu de charge sur le système (en exécutant un petit script qui hache des choses quatre fois), la machine est bloquée, mais cpufreq-info signale toujours 800 MHz. Je peux régler manuellement la fréquence sur 2 GHz, ce qui résout le problème de performances, mais me coûtera ma batterie.

Voici le résultat de cpufreq-info:

cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 10.0 us.
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
  cpufreq stats: 2.00 GHz:5,75%, 2.00 GHz:0,47%, 1.90 GHz:0,00%, 1.80 GHz:0,01%, 1.70 GHz:0,01%, 1.60 GHz:0,01%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,01%, 1.20 GHz:0,02%, 1.10 GHz:0,01%, 1000 MHz:0,02%, 900 MHz:0,02%, 800 MHz:93,67%  (1388)
analyzing CPU 1:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 1
  maximum transition latency: 10.0 us.
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
  cpufreq stats: 2.00 GHz:3,17%, 2.00 GHz:0,01%, 1.90 GHz:0,01%, 1.80 GHz:0,00%, 1.70 GHz:0,00%, 1.60 GHz:0,01%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,01%, 1.20 GHz:0,01%, 1.10 GHz:0,01%, 1000 MHz:0,02%, 900 MHz:0,02%, 800 MHz:96,71%  (1433)
analyzing CPU 2:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 2
  maximum transition latency: 10.0 us.
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
  cpufreq stats: 2.00 GHz:2,69%, 2.00 GHz:0,00%, 1.90 GHz:0,01%, 1.80 GHz:0,01%, 1.70 GHz:0,01%, 1.60 GHz:0,02%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,02%, 1.20 GHz:0,02%, 1.10 GHz:0,01%, 1000 MHz:0,02%, 900 MHz:0,02%, 800 MHz:97,16%  (1194)
analyzing CPU 3:
  driver: acpi-cpufreq
  CPUs which run at the same hardware frequency: 0 1 2 3
  CPUs which need to have their frequency coordinated by software: 3
  maximum transition latency: 10.0 us.
  hardware limits: 800 MHz - 2.00 GHz
  available frequency steps: 2.00 GHz, 2.00 GHz, 1.90 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz
  available cpufreq governors: conservative, ondemand, userspace, powersave, performance
  current policy: frequency should be within 800 MHz and 2.00 GHz.
                  The governor "ondemand" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz (asserted by call to hardware).
  cpufreq stats: 2.00 GHz:3,07%, 2.00 GHz:0,02%, 1.90 GHz:0,01%, 1.80 GHz:0,00%, 1.70 GHz:0,01%, 1.60 GHz:0,01%, 1.50 GHz:0,01%, 1.40 GHz:0,01%, 1.30 GHz:0,01%, 1.20 GHz:0,01%, 1.10 GHz:0,03%, 1000 MHz:0,03%, 900 MHz:0,01%, 800 MHz:96,77%  (1004)
10
user159534

J'ai eu le même problème avec la dernière version de Mint, régler la mise à l'échelle sur conservateur semblait être le plus proche de la façon dont la demande fonctionnait.

Ensuite, j'ai découvert le problème: le seuil haut était trop élevé, il était réglé à 95% de la charge. Désormais, c'est correct pour les charges continues, mais dans la plupart des cas, il y a une petite rafale d'activité du processeur et vous voulez que le processeur pour passer à 100% plus vite. J'ai résolu ce problème en réglant le seuil supérieur vers le haut (75 semble fonctionner correctement dans mon cas). Vous le changez en faisant écho à la valeur désirée en /sys/devices/system/cpu/cpufreq/ondemand/up_threshold.

4
user165241

Je suggère que vous devriez utiliser Existe-t-il une application d'économie d'énergie similaire à Jupiter?

Et utilisez indicateur-cpufreq, afin que vous sachiez à quelle fréquence vous vous trouvez. vérifiez le lien que j'ai collé comment installer/configurer indicateur-cpufreq

Existe-t-il une application d'économie d'énergie similaire à Jupiter? Section 3.) Processeur et mise à l'échelle de la fréquence

ondemand        Dynamically switch between CPU(s) available if at 95% cpu load

Maintenir le Cpu au minimum, ne le dépasser que si à 95% de la charge du Cpu

performance     Run the cpu at max frequency

conservative    Dynamically switch between CPU(s) available if at 75% load

Conserver le processeur à faible, ne le dépasser que si la charge est de 75%

powersave       Run the cpu at the minimum frequency
2
Qasim

J'ai eu ce problème les 14.04 - 16.04 (à ce jour). Pour le résoudre, j'ai dû forcer Ubuntu à ignorer la limitation du bios. Ce qui suit a fonctionné pour moi:

Bouillon ouvert:

Sudo vim /etc/default/grub

Remplacez la ligne GRUB_CMDLINE_LINUX_DEFAULT:

- GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
+ GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_pstate=disable processor.ignore_ppc=1"

Mettre à jour la nourriture:

Sudo update-grub

Redémarrez alors:

echo 1 | Sudo dd of=/sys/module/processor/parameters/ignore_ppc
echo 2900000 | Sudo dd of=/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 
echo 2900000 | Sudo dd of=/sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq 
echo 2900000 | Sudo dd of=/sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq 
echo 2900000 | Sudo dd of=/sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq 

Travaillé pour moi Vérifiez le nombre de cœurs de processeur et mettez-les à jour en conséquence. Vous voudrez peut-être mettre ces lignes supplémentaires dans /etc/rc.local afin qu'elles s'exécutent à chaque démarrage.

Ninja edit: Remplacez 2900000 ci-dessus par la valeur dans:

cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
0
benvand