AMD P-State EPP Submitted For Linux 6.3 To Improve CPU Performance/Power
The ACPI, thermal, and power management changes for Linux 6.3 have been submitted early due to traveling next week by ACPI/PM maintainer Rafael Wysocki. Most significant with the Linux 6.3 power management updates is adding of the AMD P-State Energy Preference Performance (EPP) mode for helping to deliver better performance and power efficiency for modern AMD Ryzen and EPYC systems on Linux.
Going back to the end of last summer have been AMD P-State EPP Linux patches for making use of the ACPI CPPC parameter of the Energy Performance Preference. The prior patches explained:
"The EPP is used in the CCLK DPM controller to drive the frequency that a core is going to operate during short periods of activity. EPP values will be utilized for different OS profiles (balanced, performance, power savings).
Energy Performance Preference (EPP) provides a hint to the hardware if software wants to bias toward performance (0x0) or energy efficiency (0xff) The lowlevel power firmware will calculate the runtime frequency according to the EPP preference value So the EPP hint will impact the CPU cores frequency responsiveness."
Making use of the EPP as part of the AMD P-State driver has helped deliver better performance in some areas where amd_pstate regressed compared to ACPI CPUFreq while also further enhancing the performance-per-Watt for Zen 2 and newer systems.
AMD P-State EPP has been quite positive and went through many rounds of code review while now is part of the power management material for the Linux 6.3 merge window. AMD has also been working on an AMD P-State "Guided Autonomous Mode" as another improvement but that work isn't ready for Linux 6.3.
In addition to AMD P-State EPP support, the power management changes for Linux 6.3 also add thermal cooling for the NVIDIA Tegra194 SoC, drop the custom Loongson1 CPUFreq driver, Emerald Rapids Xeon CPU support is added to the Intel Idle driver, Meteor Lake and Emerald Rapids support within the Intel RAPL driver, and various other fixes.
See the power management pull request for the full list of Linux 6.3 feature work on the PM front. There are also ACPI updates and thermal updates sent out as part of the early Linux 6.3 merge window pull requests.
I'll have up AMD Ryzen and EPYC P-State EPP benchmarks on Linux 6.3 once the merge window activity settles down over the next two weeks.