A New CPU Frequency Control Mechanism on Linux
summary
Replaces the ACPI three P‑state model with an AMD P‑State CPUFreq driver that uses CPPC via MSR to push fine‑grained performance hints to the SMU DPM rather than the AML interpreter, merged in kernel 5.17 and extended with cpupower and tracer in 5.18 and kselftest unit tests. Scheduler‑util governor integration and a tracer script are used to correlate activity to hardware performance goals. Early results show modest benchmark shifts (around ±2–3% on t‑bench) and larger wins in some workloads (up to ~24–30%); driver still needs cross‑platform tuning and gaming/Proton fixes.
AI-written summary · about
chapters (20)
- 0:00Intro
- 1:36Background
- 3:09Legacy CPUFreq Design and Potential Conflict
- 5:15New AMD CPUFreq Design Proposal
- 6:59Frequency Control Algorithm in SMU Firmware
- 8:08CPPC Performance Capability
- 9:02CPPC Performance Control
- 10:01Frequency Control Governors in Linux Kernel
- 15:05Existing Firmware Component
- 16:27Existing Kernel Component
- 18:22New AMD P-State Core Design and Implementation (1)
- 23:17AMD P-State Trace Event Design and Implementation
- 24:30AMD P-State Tracer Tool Support
- 26:08AMD P-State Sysfs Attributes Design and Implementation
- 28:55AMD P-State Unit Test Support
- 30:26RAPL Perf Support for AMD Processor
- 31:14Performance Per Watt Calculation
- 31:52TBench CPU Benchmark for AMD P-State vs ACPI CPUFreq
- 33:26Gitsource CPU Benchmark for AMD P-State vs ACPI CPUFreq
- 34:30Speedometer CPU Benchmark for AMD P-State vs ACPI CPUFreq
related talks
11mFine grain frequency control with kernel governors
42mIn Kernel Switcher: A Solution
19msystem pressure on CPUs capacity and feedback to scheduler
40mLatency hints for CFS task
16mCombining DTPM with the thermal control framework
32mImprove CPU Utilization by Designing a New Schedule Algorithm
50mFrequency-invariance gaps in current kernel
15m(Impact of) Recent CPU topology changes
