PVE Die Frage nach den P-States

PVE Die Frage nach den P-States

Nachdem C6 endlich verschwunden war, blieb noch die Frage nach den P-States. Auch hier bedeutet „High Performance“ im BIOS nicht automatisch, dass jeder Kern dauerhaft mit vollem Takt läuft. Linux übernimmt über intel_pstate und Intel HWP weiterhin einen Teil der Steuerung. Entscheidend ist daher nicht der angezeigte Leerlauftakt, sondern ob unter Last sofort die erwartete Leistung und der Turbo-Takt erreicht werden. Im Workload-Profil „Virtualization – High Performance“ von HPE sollten die P-States zumindest passen und die CPU sollte immer bei der maximalen Frequenz kleben. Folgende Einstellungen können nur vorgenommen werden, wenn der „OS Control Mode“ ausgewählt wurde. Viel Spaß beim Experimentieren mit den Proxmox Energieeinstellungen.

Kurz gesagt:

apt update && apt install -y powertop linux-cpupower
cpupower frequency-info

Aktuelles Performance Profil anzeigen lassen:

So weit, so gut, aber ich werde das Gefühl nicht los, dass ich wieder veräppelt werde… beginnende Paranoia?

steuerung aller CPU´s anzeigen lassen:
grep . /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

Das passt auch. Warum bin ich so misstrauisch? Energischer nachfragen!

for f in /sys/devices/system/cpu/cpu*/power/energy_perf_bias; do echo -n "$(basename $(dirname $(dirname $f))): "; cat $f; done

Was bedeutet „6“, mal recherchieren „CPU_frequency_scaling“,… ha… erwischt

Dauerhafte Umstellung (nach Neustarts)

Da Proxmox (Debian) diese Werte beim Booten neu einliest, sollten Sie die Einstellung automatisieren. Am saubersten gelingt dies über eine udev-Regel. Dadurch wird der Wert automatisch auf 0 gesetzt, sobald das System die CPU-Kerne beim Booten initialisiert.

  1. Erstellen Sie eine neue Regeldatei:bashnano /etc/udev/rules.d/99-cpu-performance.rules
  2. Fügen Sie die folgende Zeile ein:textACTION=="add", SUBSYSTEM=="cpu", ATTR{power/energy_perf_bias}="0"
  3. Speichern Sie die Datei

Hat es sich gelohnt?

Ob die Änderung wirklich etwas gebracht hat, muss am Ende jeder für sich selbst entscheiden. Mein Server verbraucht im Leerlauf jetzt rund 40 Watt mehr. Auf ein Jahr gerechnet sind das immerhin etwa 350 Kilowattstunden zusätzlich.

Ist es das wert?

In einem Homelab vermutlich eher nicht. Bei Arbeitslasten, die kurze Reaktionszeiten und eine gleichbleibend hohe Leistung benötigen, kann es dagegen sinnvoll sein. Entscheidend ist, ob sich die Verbesserung auch wirklich messen lässt. Nur weil C6 nicht mehr genutzt wird, läuft eine Anwendung nicht automatisch schneller.

Spannend finde ich trotzdem, an welchen Stellen man etwas hinters Licht geführt wird. Im BIOS steht „Static High Performance“, die C-States sind abgeschaltet und trotzdem entscheidet das Betriebssystem am Ende anders.

Kaum macht man es richtig, funktioniert es. Die Stromrechnung erinnert einen dann aber daran, dass volle Leistung auch ihren Preis hat.

 

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert