Um die Leistungsaufnahme bei modernen Computersystem zu reduzieren, haben sich die Hersteller allerhand einfallen lassen. Für den normalen Endverbraucher wird es hingegen immer schwerer den Überblick zu behalten. Soll man die erweiterten C-States im BIOS aktivieren ? Was sind die Vor- und Nachteile ? Wieviel Strom lässt sich wirklich sparen ?

Diesen Fragen möchte ich hier auf den Grund gehen. Da die Materie extrem nerdlastig ist, kratze ich sie nur oberflächlich an. Alle energierelevanten Standards im PC Bereich sind im Advanced Configuration and Power Interface (ACPI) zusammengefasst.

C-States

Die C-States Energiesparfunktionen können im BIOS eingestellt werden. Sie dienen dazu die CPU (also den Prozessor) in einen stromsparenden Modus zu befördern, wenn gerade keine oder wenig Leistung abgerufen wird. Diesen Modus bezeichnet man auch als Idle (also Leerlauf). Die C-States müssen von der Hardware unterstützt werden, bieten aber mit das größte Energiesparpotential.

State Name Latenz zu C0 Leistungsaufnahme*
C0 Operating Mode 100%
C1 Halt ~ 1 µs 40%
C1E Enhanced Halt ~ 1-2 µs 35%
C2 Stop Clock ~ 59 µs 30%
C2E Extended Stop ~ 70 µs 28%
C3 Deep Sleep ~ 85 µs 26%
C4 Deeper Sleep ~ 150 µs 24%
C4E/C5 Enhanced Deeper Sleep ~ 250 µs 22%
C6 Deep Power Down ~ 300 µs 19%
C7 Deeper Power Down ~ 400 µs 15%

* Die Leistungsaufnahme ist von System zu System unterschiedlich. Sie soll hier nur dazu dienen eine Vorstellung von der unterschiedlichen Leistungsaufnahme in den C-States zu bekommen.

Generell zeigt sich: Je tiefer die CPU „einschläft“ desto länger dauert es, bis die CPU in den Volllastzustand zurückwechseln kann. Dies ist logisch, denn bei hohen C-States – ab C6 – werden Arbeitsspeicher und sogar Teile des internen Cache abgeschaltet.

P-States

CPU-Mulitplier und CPU Spannung können zudem noch über die softwareseitigen P-States reguliert werden. Diese werden vom Betriebssystem (also z.B. Windows) verwaltet. Entgegen seines schlechten Rufs ist Windows eines der Betriebssysteme mit der besten P-States Verwaltung. Im Idle lassen sich so bessere Werte wie z.B. unter Ubuntu Linux (10,0W zu 14,5W in meinem Beispiel) erreichen.

State * CPU-Takt (MHz) CPU-Takt (Anteil)
P0 2801 100%
P1 2800 99%
P2 2700 96%
P3 2600 92%
P4 2500 89%
P5 2300 82%
P6 2200 78%
P7 2100 74%
P8 2000 71%
P9 1900 67%
P10 1800 64%
P11 1700 60%
P12 1500 53%
P13 1400 49%
P14 1300 46%
P15 1200 42%

* Das hier dargestellte Beispiel basiert auf einem Intel Core i5-3360M (2×2,80GHz). Die Werte wurden mit Microsofts pwrtest Tool (Windows DDK Toolkit 7.1) unter Windows 7 Professional 64bit ermittelt. Prozessoren mit anderen Taktfrequenzen stufen natürlich anders ab. Die maximale Anzahl an P-States ist auf 16 limitiert, wovon Windows 7 auch alle nutzt.

Die maximale Transition Latency (also die Latenz um wieder in den State 0 = 100% Leistung) zu gelangen liegt bei diesem System bei 10 µs. Bei den P-States handelt es sich also um einen reinen Softwaremechanismus.

S-States

Die Sleep-States werden über die Energieverwaltung des Betriebssystemes gesteuert. Nach einer beliebigen Zeit fährt dann das System (sofern unterstützt) in den jeweiligen S-State herunter.

State Beschreibung Leistungsaufnahme
S0 Working / on 100%
S1 Sleep / CPU stopped
S2 Deeper Sleep / CPU off
S3 Standby (Save to RAM) ~ 1 Watt
S4 Ruhezustand (Save to disk) ~ 0,1 Watt
S5 System power off ~ 0,1 Watt

HDD-States

Energiesparmechanismen gibt es natürlich auch bei Festplatten. Diese werden größtenteils durch die SSDs unwichtiger, aber da große Kapazitäten immer noch durch normale Festplatten bedient werden, ist dies für einige trotzdem interessant (z.B. in einem NAS). Hier ein Beispiel einer Seagate Barracuda ST3000DM001.

State Leistungsaufnahme (w) Aktivierung
Load (Lesen/Schreiben) 5,8 Unter Last
Idle (Leistung) 1,8 Keine Aktivität
Active Idle 0,9 ~1s keine Aktivität
Low Power Idle 0,6 ~10s keine Aktivität
Standby 0,1 Energieverwaltung (OS)

Zuletzt gibt es noch die G-States (Global States), die aber nicht konfigurierbar sind. Als G-States gibt es On, Off und Sleeping. Die G-States sind für den Endverbraucher relativ uninteressant, sie dienen meist nur zu Dokumentationszwecken.

Wieviel Energie lässt sich denn nun sparen ? Einiges. Eine pauschale Aussage lässt sich hier nicht treffen, denn jedes System reagiert natürlich anders auf die Energiesparmechanismen. Die C-States bieten mit das größte Energiesparpotential und ich kann nur jeden raten (gerade bei NAS / Fileservern oder Always-On-PCs) sich im BIOS zu vergewissern, dass die C-States aktiviert sind (die Standardeinstellung in den meisten BIOS ist „deaktiviert“ !).

Warum sind die C-States häufig werksseitig deaktiviert ? Zum einen wird der PC durch die Aktivierung der C-States etwas träger, denn er benötigt eine gewisse Zeit um aus den Schlafzuständen wieder in den Normalmodus zu wechseln. Ich habe schon von 5-10% Leistungsabfall auf den USB und SATA-Hostcontrollern gelesen. Auch dies ist von System zu System unterschiedlich. Hier kann ich nur dazu raten die Einstellungen durchzuprobieren – eventuell werdet ihr mit einer netten Stromersparnis belohnt!

Tipp: Wer noch nach einem geeigneten Mainboard sucht, der sollte sich das Intel DH87RL einmal anschauen, welches mit einem phänomenal niedrigen Verbrauch von 10W (mit Intel Core i5-4570) auftrumpft.

3 Replies to “C-States, P-States, S-States – Energieverwaltung erklärt”

  • Fred says:

    Hallo,
    interessanter Artikel, schöne übersicht.
    Bei dem Vergleich Windwos zu Linux habe ich einige Fragen:

    Wurde Unter Linux Powertop vewendet?
    https://wiki.ubuntuusers.de/PowerTOP/

    Bei mir macht „powertop –auto-tune“ einen Unterschied von ~4W, wenn auch bei einem Athlon-Prozessor.

    Wurden die Festplatten mit hdparm in Schalfmodus versetzt?
    Bei mir nochmals 2* 3W. Ich denke das sind Energiesparfunktionen die Windwos automatisch einrichtet, während man unter Linux das selber in die Hand nehmen muss.

    Danke,
    F.

  • Uwe says:

    Und wie funktioniert das auf einem Asus Prime B760 Plus (DDR5) Mainboard mit UEFI?
    Ich möchte diesen ganzen Energiespar kram deaktivieren.
    Der PC soll im „Normal modus“ aber mit voller/maximaler Stomversorgung laufen.
    Betriebsystem: Linux-Mint Debian 5

    liebe Grüße

  • Uwe says:

    Nachtrag:

    uwe@intel:~$ inxi -Fz
    System: Kernel: 6.1.0-0.deb11.9-amd64 x86_64 bits: 64 Desktop: Cinnamon 5.6.8 Distro: LMDE 5 Elsie
    Machine: Type: Desktop System: ASUS product: N/A v: N/A serial:
    Mobo: ASUSTeK model: PRIME B760-PLUS v: Rev 1.xx serial: UEFI: American Megatrends v: 1210
    date: 07/14/2023

Schreibe einen Kommentar

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

CPU Vergleich

Technikaffe.de

Wir von Technikaffe.de schreiben über Mini-PCs, XBMC / Kodi Mediaplayer und NAS. Spezialisiert haben wir uns vor allem auf sparsame Hardware. Bei Fragen und Feedback kontaktiert uns gerne über die Kommentarfunktion, wir lesen täglich mit und antworten in der Regel binnen 24 Stunden.