AMD P-State EPP Driver Updated For Improving Linux Power Efficiency
In early September AMD announced their new P-State "EPP" driver for Linux systems to further evolve their P-State driver effort started last year. This P-State EPP driver effort is aiming for better performance and power control while this weekend they sent out the second iteration of these Linux kernel patches.
The AMD P-State EPP driver extends the initial P-State CPU frequency scaling driver implementation by making use of ACPI CPPC's Energy Preference Performance (EPP) information that is a hint to the hardware whether the software prefers a bias to performance or energy efficiency.
Benchmark results provided by AMD with their initial P-State EPP patches using an AMD EPYC "Rome" (Zen 2) server showed this new driver code delivering significantly better performance-per-Watt than amd-pstate or acpi-cpufreq across various governors.
With the new AMD P-State EPP "v2" driver, the code has been re-based against the state of the Linux 6.0 upstream kernel. The new patches have also incorporated feedback from the initial code review, various typo and code formatting fixes, changing the "epp_enabled" module parameter to the shorter "epp" name, the default EPP mode is now false, and various other code improvements.
Those interested can find the new AMD P-State EPP driver v2 patches via the kernel mailing list. Due to the timing though of these patches, the earliest we could now find the driver mainlined would be with Linux 6.2 in the new year due to not being ready for the currently open v6.1 merge window.
Once the driver is ready for mainline, I'll be testing P-State EPP on various AMD Ryzen / Threadripper / EPYC systems.
The AMD P-State EPP driver extends the initial P-State CPU frequency scaling driver implementation by making use of ACPI CPPC's Energy Preference Performance (EPP) information that is a hint to the hardware whether the software prefers a bias to performance or energy efficiency.
Benchmark results provided by AMD with their initial P-State EPP patches using an AMD EPYC "Rome" (Zen 2) server showed this new driver code delivering significantly better performance-per-Watt than amd-pstate or acpi-cpufreq across various governors.
With the new AMD P-State EPP "v2" driver, the code has been re-based against the state of the Linux 6.0 upstream kernel. The new patches have also incorporated feedback from the initial code review, various typo and code formatting fixes, changing the "epp_enabled" module parameter to the shorter "epp" name, the default EPP mode is now false, and various other code improvements.
Those interested can find the new AMD P-State EPP driver v2 patches via the kernel mailing list. Due to the timing though of these patches, the earliest we could now find the driver mainlined would be with Linux 6.2 in the new year due to not being ready for the currently open v6.1 merge window.
Once the driver is ready for mainline, I'll be testing P-State EPP on various AMD Ryzen / Threadripper / EPYC systems.
13 Comments