web-dev-qa-db-fra.com

Mise à l'échelle du processeur: comment la fréquence actuelle peut-elle être en dehors de la plage min-max?

J'essaie de comprendre pourquoi mes processeurs ne fonctionnent pas à des fréquences plus élevées ( lien associé )

Quelqu'un peut-il m'expliquer comment est-il possible que, lorsqu'un min et un max soient définis, la valeur effective finisse par sortir de cette plage?

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
3267000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 
3300000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 
1199960


$ cpupower frequency-info
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.30 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 3.27 GHz and 3.30 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.20 GHz.
  boost state support:
    Supported: yes
    Active: yes
    25500 MHz max turbo 4 active cores
    25500 MHz max turbo 3 active cores
    25500 MHz max turbo 2 active cores
    25500 MHz max turbo 1 active cores

Aussi, quelqu'un peut-il expliquer la différence entre cpuinfo_cur_freq et scaling_cur_freq s'il vous plaît?


Problèmes liés que j'ai ouverts pour résoudre mon problème (peuvent contenir des informations supplémentaires non mentionnées ici qui pourraient être utiles)


Information additionnelle:

$ Sudo rdmsr -a 0x19a
0
0
0
0
rdmsr: No CPU 4
4
Sebastien Lorber

Selon votre processeur et tel est le cas pour vous, cpuinfo_cur_freq et scaling_cur_freq sont la même chose.
Pour certains processeurs, cpuinfo_cur_freq implique une lecture matérielle et peut être "coûteux" en temps, raison pour laquelle il nécessite Sudo d'accéder.

La fréquence de votre CPU peut être en dehors des limites que vous avez définies, car le processeur lui-même peut se retirer de la boucle à verrouillage de phase (PLL) si la charge est suffisamment légère et indépendamment de ce que vous avez demandé. Ne vous inquiétez pas, la fréquence du processeur augmentera très rapidement s'il reste du travail à faire. Dans votre cas, vous utilisez le gouverneur de performance, qui donnera le temps d'accélération de la fréquence du processeur le plus rapide possible.

Pour votre autre question référencée, et comme je l’ai mentionné plus haut, je pense que la modulation d’horloge est impliquée, ce qui pose un problème pour le pilote de fréquence du processeur intel_pstate. Pour confirmer ou infirmer si la modulation d'horloge est activée, veuillez ajouter ce résultat à votre question:

$ Sudo modprobe msr
$ Sudo rdmsr -a 0x19a

Notez que le package msr-tools est nécessaire pour la primitive rdmsr. Je décoderai les informations, une fois fournies.

3
Doug Smythies