web-dev-qa-db-fra.com

Ubuntu 20.04. Overclocks Intel I7-9700K automatiquement?

J'ai une nouvelle Intel I7-9700K en cours d'exécution à Ubuntu 20.04. Ce processeur doit s'écouler à la fréquence de base de 3,6 GHz avec une fréquence maximale de 4,9 GHz dans l'overclocking.

J'ai fait un calcul coûteux aujourd'hui et j'ai regardé les fréquences d'horloge avec

watch -n.1 "cat /proc/cpuinfo | grep \"^[c]pu MHz\""

et les noyaux CPU ont horrifié à environ 4,5 GHz. Comment se peut-il? Je n'ai pas changé les paramètres du BIOS? Les températures où dans la plage normale selon les capteurs LM (inférieures à 80 'C surtout). Par demande:

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_driver

retour

intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate
intel_pstate

et

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

retour

powersave
powersave
powersave
powersave
powersave
powersave
powersave
powersave
1
Eric

quand occupé

cpu1: MSR_TURBO_RATIO_LIMIT: 0x23242526
35 * 100.0 = 3500.0 MHz max turbo 4 active cores
36 * 100.0 = 3600.0 MHz max turbo 3 active cores
37 * 100.0 = 3700.0 MHz max turbo 2 active cores
38 * 100.0 = 3800.0 MHz max turbo 1 active cores

Typiquement est très inhabituel de voir ceci (i5-9600k, mais ce n'est pas la valeur par défaut du processeur, je l'ai fait dans le BIOS):

cpu3: MSR_TURBO_RATIO_LIMIT: 0x2b2b2e2e2e2e2e2e
43 * 100.0 = 4300.0 MHz max turbo 8 active cores  <<< I don't have 8 cores
43 * 100.0 = 4300.0 MHz max turbo 7 active cores  <<< I don't have 7 cores
46 * 100.0 = 4600.0 MHz max turbo 6 active cores
46 * 100.0 = 4600.0 MHz max turbo 5 active cores
46 * 100.0 = 4600.0 MHz max turbo 4 active cores
46 * 100.0 = 4600.0 MHz max turbo 3 active cores
46 * 100.0 = 4600.0 MHz max turbo 2 active cores
46 * 100.0 = 4600.0 MHz max turbo 1 active cores

Parmi les autres raisons, citons vos paramètres de biais de puissance, l'attente d'E/S, la puissance ou l'étranglement thermique (vous avez mentionné thermique n'est pas le problème, mais simplement dire). Si vous voulez le plus, vous pouvez utiliser le gouverneur de performance à la place du gouverneur PowerSave. Bien que beaucoup recommandent des outils de niveau supérieur, j'utilise des primitives:

doug@s18:~/c$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
powersave
powersave
powersave
powersave
powersave
powersave
doug@s18:~/c$ echo performance | Sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
performance
doug@s18:~/c$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
performance
performance
performance
performance
performance
performance

quand inactif

Lorsque l'on échantillonne les CPU à un taux aussi élevé, 10 fois par seconde, la commande elle-même a une incidence sur le système entraînant un biais dans ce qui est observé. N'oubliez pas que les processeurs inactifs peuvent entrer dans des états de ralenti très profond pendant plusieurs secondes à la fois et les réveiller à un rythme élevé juste pour échantillonner la fréquence, ce n'est pas une bonne idée, mais extrêmement courant chez les utilisateurs. Si vous voulez savoir ce qui se passe avec votre système, je vous suggérerais un tubostat pour deux raisons: c'est un très bon outil; C'est également l'outil préféré pour les escalades en amont. Mais s'il vous plaît échantillonner lentement. Exemple (surtout, je trouve suffisamment d'informations sommaires, mais vous pouvez forcer beaucoup d'informations. J'ai laissé les lignes liées à HWP de la peau initiale d'informations):

$ Sudo turbostat --Summary --show Busy%,Bzy_MHz,PkgTmp,PkgWatt,GFXWatt,IRQ --interval 6
...
CPUID(6): APERF, TURBO, DTS, PTM, HWP, HWPnotify, HWPwindow, HWPepp, No-HWPpkg, EPB
...
cpu0: MSR_PM_ENABLE: 0x00000001 (HWP)
cpu0: MSR_HWP_CAPABILITIES: 0x0109252e (high 46 guar 37 eff 9 low 1)
cpu0: MSR_HWP_REQUEST: 0x8000ff01 (min 1 max 255 des 0 epp 0x80 window 0x0 pkg 0x0)
cpu0: MSR_HWP_INTERRUPT: 0x00000001 (EN_Guaranteed_Perf_Change, Dis_Excursion_Min)
...
Busy%   Bzy_MHz IRQ     PkgTmp  PkgWatt GFXWatt
0.03    956     262     31      1.82    0.00
0.03    800     122     31      1.85    0.00  <<< Notice the busy % and low CPU freq.
0.03    800     131     32      1.86    0.00
0.03    800     166     31      1.86    0.00
0.03    800     140     31      1.86    0.00
0.03    800     128     31      1.83    0.00
0.03    800     128     31      1.78    0.00
0.02    800     99      31      1.75    0.00
0.03    800     139     31      1.78    0.00
0.02    800     108     31      1.58    0.00
0.03    800     144     31      1.66    0.00
0.03    800     121     31      1.72    0.00

Maintenant, juste parce que dans votre cas, vous voyez des fréquences de processeur beaucoup plus élevées, cela ne signifie pas que votre consommation d'énergie est grande, le cas échéant. Si la fréquence est plus élevée, la CPU termine également son travail plus rapidement, et il se retourne plus tôt et plus longtemps. Exemple:

Busy%   Bzy_MHz IRQ     PkgTmp  PkgWatt GFXWatt
0.02    800     100     31      1.90    0.00  <<< notice slightly different baseline than above (different kernel today)
0.02    800     93      31      1.90    0.00
0.03    800     130     31      1.90    0.00
0.05    800     208     31      1.90    0.00
0.04    800     169     31      1.90    0.00
0.05    1069    199     31      1.91    0.00
0.06    1904    285     31      1.94    0.00
0.00    4548    98      31      1.93    0.00
0.00    4600    89      32      1.93    0.00
0.01    4545    129     32      1.93    0.00 <<< Cost was about 0.03 watts.
0.00    4601    109     31      1.93    0.00
0.01    4559    140     31      1.94    0.00
1
Doug Smythies