Files
chemenu/kb/comparisons/amd-pstate vs acpi-cpufreq.md
T
torben 18ae28f918
CI / verify (push) Failing after 32s
Release / release (push) Successful in 38s
Chemenu 2.1.0 - deterministischer Wissenskompiler
Chemenu kompiliert Rohnotizen zu einem verlinkten, quellengebundenen Wiki:
raw/ -> types/ + tools/ -> kb/ -> reports/. Was mechanisch ist, macht
tools/wikitool; was Urteil braucht, macht ein Agent unter Contracts, deren
Grenzen in Code durchgesetzt sind statt im Prompt.

Dieser Commit ist der Startpunkt der oeffentlichen Historie. Die vorherige
Entwicklung fand in einer privaten Instanz statt und ist nicht Teil dieses
Repositorys; ihre Erzaehlung steht vollstaendig in CHANGES.md, das mit 44
Eintraegen von 0.1.0 bis 2.1.0 erhalten geblieben ist.

Der mitgelieferte Korpus ist ein Testbett und eine Demo: 170 Seiten ueber den
Stack selbst - Gates, Lint, Versionierung, Suche, das Wiki-Muster. Er
dokumentiert das Werkzeug mit den eigenen Mitteln des Werkzeugs.

Lizenz: AGPL-3.0 fuer den Stack (tools/, types/), CC-BY-4.0 fuer die Inhalte.
Die Grenze zwischen beiden ist der Dateiplan, den dist export berechnet -
siehe NOTICE.
2026-09-01 16:26:14 +02:00

144 lines
6.7 KiB
Markdown

---
type: types/comparison.md
tags: [kernel, power-management, amd, cpu, driver]
created: 2026-07-31
entities: [amd-pstate, acpi-cpufreq]
summary: "Vergleich zweier AMD-CPU-Power-Management-Treiber: CPPC-basiertes amd-pstate gegen\xFC\
ber ACPI-basiertem acpi-cpufreq."
---
# Comparison: amd-pstate vs acpi-cpufreq
## Überblick
Dieser Vergleich untersucht zwei Linux-Kernel-CPU-Energieverwaltungstreiber für AMD-Prozessoren: **amd-pstate** (der neuere CPPC-basierte Treiber) und **acpi-cpufreq** (der traditionelle ACPI-basierte Treiber). Der Vergleich konzentriert sich auf ihre Funktionen, Leistungsmerkmale und Anwendungsfälle, um zu bestimmen, welcher Treiber für verschiedene Szenarien geeignet ist.
## Vergleichstabelle
| Kriterium | [[amd-pstate]] | [[acpi-cpufreq]] |
|----------|---------------|------------------|
| **Einführung** | Linux Kernel 5.17 (2022) | Etablierter ACPI-Treiber |
| **Hardware-Unterstützung** | AMD-CPUs mit CPPC (neuere Generationen, Zen2, Zen3) | Alle AMD-CPUs via ACPI |
| **Energieverwaltungs-Schnittstelle** | CPPC (Collaborative Processor Performance Control) | ACPI (Advanced Configuration and Power Interface) |
| **Granularität** | Fein-körnig, kontinuierlicher Bereich | 3 diskrete P-States (0, 1, 2) |
| **Feedback-Mechanismus** | Hardware bietet Ziele und Hinweise | Statische ACPI-Tabellen |
| **Governor-Unterstützung** | schedutil, ondemand (mit CPPC-Bewusstsein) | schedutil, ondemand, conservative, powersave, performance |
| **Energieeffizienz** | Überlegen - optimiert für Workload | Standard - generischer Ansatz |
| **Mobiles Batterielebensdauer** | Erweitert - bessere Energieverwaltung | Standard |
| **Leistungstuning** | Präzise, adaptiv | Grob, begrenzt |
| **Fallback-Verhalten** | Fällt auf acpi-cpufreq bei inkompatibel Hardware zurück | N/A |
| **Schnittstelle** | sysfs | sysfs |
| **Kernel-Integration** | Benötigt 5.17+ | Unterstützt in allen Kerneln |
## Analyse
### Energieverwaltungs-Ansatz
**amd-pstate** implementiert einen kooperativen Ansatz über CPPC:
- CPU-Hardware bietet **Leistungsziele** (optimale Betriebspunkte)
- Hardware bietet **Hinweise** über effiziente Leistungsstatus
- Governoren bewerten diese Ziele und Hinweise neben traditionellen Last-Metriken
- Aktiviert **Echtzeit-Anpassung** an Workload-Merkmale
**acpi-cpufreq** verwendet einen traditionellen Ansatz:
- Liest **statische P-States** aus ACPI-Tabellen
- Nur 3 Zustände verfügbar für AMD: Vollständig, Zwischenstation, Niedrigste
- Governoren wählen aus diesen diskreten Zuständen basierend auf Systemlast
- **Grob-körnige** Steuerung mit begrenztem Optimierungspotential
### Leistungsmerkmale
| Aspekt | amd-pstate | acpi-cpufreq |
|--------|------------|--------------|
| **Reaktionsfähigkeit** | Hoch - schnelle Anpassung an Laständerungen | Mittel - Zustandsübergänge dauern länger |
| **Stromverbrauch** | Niedriger - optimiert für Effizienz | Höher - weniger optimiert |
| **Wärmeabgabe** | Niedriger - bessere Wärmeverwaltung | Höher - weniger effizient |
| **Batterie-Auswirkung (Mobil)** | Positiv - verlängert Batterielebensdauer | Neutral - standard Entladung |
| **Benchmark-Leistung** | Vergleichbar - behält Leistung | Vergleichbar - behält Leistung |
### Anwendungsfälle
#### amd-pstate ist ideal für:
- **Moderne AMD-Systeme** (Zen2, Zen3, neuere) mit CPPC-Unterstützung
- **Mobile Geräte**, bei denen Batterielebensdauer kritisch ist
- **Stromempfindliche Umgebungen** (Laptops, Eingebettete Systeme)
- **Mixed-Workload-Szenarien**, die adaptive Energieverwaltung benötigen
- **Benutzer, die optimale Energieeffizienz anstreben** ohne Leistungseinbuße
#### acpi-cpufreq ist geeignet für:
- **Ältere AMD-Systeme** ohne CPPC-Unterstützung
- **Legacy-Hardware**-Kompatibilität
- **Stabile, bewährte Verhaltensweise** Präferenz
- **Fallback-Szenario**, wenn amd-pstate nicht geladen wird
- **Systeme, auf denen amd-pstate nicht verfügbar ist** (Kernel < 5.17)
### Governor-Verhalten
Beide Treiber arbeiten mit den gleichen Governoren, aber mit unterschiedlichen Funktionen:
| Governor | amd-pstate | acpi-cpufreq |
|----------|------------|--------------|
| **schedutil** | Verwendet Scheduler-Daten + CPPC-Ziele/Hinweise | Verwendet nur Scheduler-Daten |
| **ondemand** | Verwendet Last-Daten + CPPC-Ziele/Hinweise | Verwendet nur Last-Daten |
| **conservative** | Konservativer mit CPPC-Bewusstsein | Standard konservatives Verhalten |
| **powersave** | Minimale Frequenz | Minimale Frequenz |
| **performance** | Maximale Frequenz | Maximale Frequenz |
### Kompatibilität und Fallback
**amd-pstate** enthält intelligenten Fallback:
- Versucht, auf AMD-Hardware zu initialisieren
- Prüft auf CPPC-Unterstützung
- Bei Initialisierungsfehlschlag oder inkompatible Hardware: **automatischer Fallback zu acpi-cpufreq**
- Dies gewährleistet Abwärtskompatibilität und elegante Degradation
**acpi-cpufreq** hat keinen Fallback-Mechanismus, da es der traditionelle Treiber ist.
### Migrationsbedingungen
Für Benutzer, die von acpi-cpufreq zu amd-pstate wechseln möchten:
**Vorteile:**
- Verbesserte Energieeffizienz
- Verlängerte Batterielebensdauer auf Laptops
- Bessere Wärmeverwaltung
- Responsivere Energieverwaltung
**Überlegungen:**
- Benötigt Linux Kernel 5.17 oder neuere
- Benötigt AMD-CPU mit CPPC-Unterstützung
- Kann Boot-Parameter oder Konfiguration aktualisieren müssen
- Systemstabilität nach dem Wechsel überwachen
**Überprüfung:**
```bash
# Check current driver
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_driver
# Check available governors
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
# Check CPPC support (amd-pstate)
ls /sys/devices/system/cpu/cpu0/cpufreq/cppc_*
```
## Empfehlung
- **Für neue Systeme mit unterstützter Hardware:** Verwende **amd-pstate** als Standardwahl. Die verbesserte Energieverwaltung und Energieeffizienzvorteile wiegen alle Migrationsprobleme auf.
- **Für ältere Systeme:** Weiterhin **acpi-cpufreq** verwenden oder auf den automatischen Fallback-Mechanismus verlassen.
- **Für gemischte Umgebungen:** Der automatische Fallback von amd-pstate zu acpi-cpufreq gewährleistet Kompatibilität über vielfältige Hardware hinweg.
## Fazit
**amd-pstate** stellt einen bedeutenden Fortschritt in der CPU-Energieverwaltung für AMD-Prozessoren dar und bietet fein-körnige Steuerung, bessere Effizienz und verbessertes Batterielebensdauer. **acpi-cpufreq** bleibt ein zuverlässiger Fallback und dient weiterhin älterer Hardware. Die Wahl zwischen ihnen hängt hauptsächlich von Hardware-Unterstützung und Kernel-Version ab, wobei amd-pstate die klare Präferenz für moderne AMD-Systeme ist.
## Beziehungen
- **compares:** [[amd-pstate]]
- **compares:** [[acpi-cpufreq]]
## Siehe auch
- [[amd-pstate]]
- [[acpi-cpufreq]]