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

10

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

Voici la sortie 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)
user159534
la source

Réponses:

4

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

Ensuite, j'ai découvert quel était le problème, le up_threshold était beaucoup trop élevé, il était réglé à 95% de charge, maintenant c'est bien pour des charges continues, mais dans la plupart des cas, il y a une petite explosion d'activité du CPU, et vous voulez le CPU pour passer à une vitesse de 100% beaucoup plus rapide. J'ai résolu ce problème en définissant le paramètre up_threshold plus bas (75 semble faire l'affaire dans mon cas). Vous le modifiez en faisant écho à la valeur souhaitée /sys/devices/system/cpu/cpufreq/ondemand/up_threshold.

user165241
la source
2

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

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

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

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

Gardez le CPU à un niveau bas, ne dépassez 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

Gardez le CPU à un niveau bas, ne dépassez que si à 75% de la charge du CPU

powersave       Run the cpu at the minimum frequency
Qasim
la source
0

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

Grub 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 grub:

sudo update-grub

Redémarrez ensuite:

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 

A 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.

Édition Ninja: remplacez 2900000 ci-dessus par la valeur de:

cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq
benvand
la source
L'échelle de fréquence fonctionnait-elle bien après cela, les températures et les performances étaient-elles identiques ou meilleures? Et vous lisez /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freqpuis réécrivez la même valeur? Pourquoi? Est-ce que 1 écrit pour ignore_ppcchanger les valeurs? (PS pourrait utiliser teeou juste >au lieu de dd)
Xen2050