cpu läuft auf niedrigster Geschwindigkeit

thomashoellerer

New Member
Oct 24, 2026
4
0
0
Hallo!
vielleicht hat hier wer eine gute Idee ....
Seit kurzer Zeit laufen bei mir bei 2 Servern mit Proxmox 9.2 die CPU auf niedrigster Geschwindigkeit (800MHz) -- sollten eigentlich bis 3,4GHz können und sind auch lange gut gelaufen.
Ich denke es war mit einem Kernel-Update. Es wurde nichts am BIOS oder so verstellt -- nur ein Neustart ...
asus P13R-EMainboard mit XEON Prozessor.
Hat jemand das schn gehabt oder eine Idee dazu?
 
Was sagt das?
Bash:
apt install -yU linux-cpupower
cpupower frequency-info
 
Hm, 800 MHz fest klingt entweder nach Treiber/Governor oder danach, dass die CPU von außen runtergedrückt wird (PROCHOT, Power-Capping). Schau mal was cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver und cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor sagen, und poste am besten noch die Ausgabe von cpupower frequency-info (Paket linux-cpupower). Da sieht man auch, ob die Hardware-Limits auf einmal anders gemeldet werden.

Um rauszufinden, ob der Kernel schuld ist, einfach mal den vorherigen Kernel booten:
Code:
proxmox-boot-tool kernel list
proxmox-boot-tool kernel pin <alte-version> --next-boot
Wenn es mit dem alten Kernel wieder auf 3,4 GHz hochgeht, ist der Kernel der Schuldige. Bleibt es bei 800 MHz, würd ich eher beim Board suchen. Falls du da ein BMC/IPMI hast, schau mal nach Power-Limits oder Temperatur-Events im Log. Welche Kernel-Version läuft gerade (uname -r) und welcher Xeon genau?
 
Was sagt das?
Bash:
apt install -yU linux-cpupower
cpupower frequency-info
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us
hardware limits: 800 MHz - 3.40 GHz
available frequency steps: 3.40 GHz, 3.30 GHz, 3.20 GHz, 3.10 GHz, 3.00 GHz, 2.90 GHz, 2.80 GHz, 2.70 GHz, 2.60 GHz, 2.50 GHz, 2.40 GHz, 2.30 GHz, 2.20 GHz, 2.10 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 schedutil
current policy: frequency should be within 1.20 GHz and 1.90 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency: 1.90 GHz (asserted by call to hardware)
boost state support:
Supported: no
Active: no

aber /proc/cpuinfo sagt immer um die 800MHz
 
Interessant, da passt was nicht zusammen. Auf einem aktuellen Xeon würd ich eigentlich intel_pstate als Treiber erwarten, nicht acpi-cpufreq. Deine Ausgabe hört nach den Governors auf, poste mal den Rest mit "current policy", "current CPU frequency" und "boost state support". Kann sein, dass die Firmware per ACPI ein Limit vorgibt. Schau mal, was das hier ausgibt:
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
cat /proc/cmdline
dmesg | grep -i -E "pstate|throttl|prochot"
grep . /sys/devices/system/cpu/cpu0/thermal_throttle/*
Wenn die Throttle-Counter hochzählen oder PROCHOT im dmesg steht, kommt das Signal vom Board, also von einem Temperatursensor, vom Netzteil oder von einem BMC-Power-Limit. Dann bringt am Kernel rumschrauben nix. Mit turbostat (im selben Paket) siehst du in der Spalte Bzy_MHz, mit welchem Takt die Kerne wirklich laufen. Hast du den Test mit dem alten Kernel schon gemacht?
 
Moin

@thomashoellerer Sicher das Du Governor nicht auf powersave eingestellt hast. @Bu66as hatte ja bereits gefragt was Dir dabei

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
angezeigt wird? Oder habe ich das hier ggf. übersehen ...

aber /proc/cpuinfo sagt immer um die 800MHz
"Immer" ist relativ. :) Was wird Dir dann dabei als "Live-Werte" angezeigt:

Code:
watch -n 1 "grep 'cpu MHz' /proc/cpuinfo"

Bsp. - in dem Fall steht bei mir Governor auf "powersave".

CPU_MHz.png

Unter Last sollten da dann die Werte eigentlich auch hochgehen. Bsp.

CPU_MHz_2.png

VG Jim
 
Last edited:
Interessant, da passt was nicht zusammen. Auf einem aktuellen Xeon würd ich eigentlich intel_pstate als Treiber erwarten, nicht acpi-cpufreq. Deine Ausgabe hört nach den Governors auf, poste mal den Rest mit "current policy", "current CPU frequency" und "boost state support". Kann sein, dass die Firmware per ACPI ein Limit vorgibt. Schau mal, was das hier ausgibt:
Code:
cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
cat /proc/cmdline
dmesg | grep -i -E "pstate|throttl|prochot"
grep . /sys/devices/system/cpu/cpu0/thermal_throttle/*
Wenn die Throttle-Counter hochzählen oder PROCHOT im dmesg steht, kommt das Signal vom Board, also von einem Temperatursensor, vom Netzteil oder von einem BMC-Power-Limit. Dann bringt am Kernel rumschrauben nix. Mit turbostat (im selben Paket) siehst du in der Spalte Bzy_MHz, mit welchem Takt die Kerne wirklich laufen. Hast du den Test mit dem alten Kernel schon gemacht?
Hab ich schon alles durch -- intel_pstate ist gerade deaktiviert (mit boot-parameter), weil acpi hin und wieder einen Kern kurz auf 1900 schalten und gefühlt minimal schneller ist.
 
Moin

@thomashoellerer Sicher das Du Governor nicht auf powersave eingestellt hast. @Bu66as hatte ja bereits gefragt was Dir dabei


angezeigt wird? Oder habe ich das hier ggf. übersehen ...


"Immer" ist relativ. :) Was wird Dir dann dabei als "Live-Werte" angezeigt:

Code:
watch -n 1 "grep 'cpu MHz' /proc/cpuinfo"

Bsp. - in dem Fall steht bei mir Governor auf "powersave".

View attachment 100491

Unter Last sollten da dann die Werte eigentlich auch hochgehen. Bsp.

View attachment 100493

VG Jim
genau das macht er nicht .... zB laufen 2 VMs mit je 4 Kernen (insgesamt 8) auf 100% und die CPU bleibt gemütlich auf 800; powersave & performance probiert - immer 800MHz
 
Last edited: