AMD Posts New "AMD-PSTATE" CPUFreq Driver Leveraging CPPC For Better Perf-Per-Watt

Written by Michael Larabel in AMD on 9 September 2021 at 07:48 AM EDT. 68 Comments
AMD
At last! AMD has posted the Linux kernel driver patches for their new "AMD-PSTATE" driver! This driver with modern AMD Zen CPUs (initially limited to Zen 3) to achieve greater performance per Watt / power efficiency on Linux than the conventional ACPI CPUFreq driver.

The new AMD-PSTATE driver is akin to Intel's P-State driver long used by Intel CPUs as better catering to their hardware than the generic ACPI CPUFreq driver. AMD-PSTATE leverages ACPI Collaborative Processor Performance Controls (CPPC) for making more informed performance state decisions.

ACPI CPPC has been supported since Zen 2 processors but the initial AMD-PSTATE driver is limited to just Zen 3 processors. AMD says they will extend their coverage with time, which would mean going back to supporting Zen 2 processors too.

It was back in July 2019 that AMD originally posted "amd_cpufreq" as a CPPC-based driver right as they were launching the Zen 2 processors. However, that patch set was abandoned and never made it to mainline. Over the past two years I routinely asked AMD about the CPPC Linux support to which they commented on the lack of resources, but great to see this new AMD CPUFreq driver finally materializing.

It's not entirely unexpected though. Last month I wrote about AMD and Valve working on a new CPU performance scaling design. In that prior article basically laid out that it would likely be the long-awaited CPPC-based approach and now this new driver patch series is delivering on just that.

Further pointing to the Valve / Steam Deck connection is that the initial AMD P-State patches are tested on AMD Cezanne APUs. AMD posted a few tests with their patch series showing nice gains out of this AMD-PSTATE driver compared to ACPI CPUFreq.


The code was posted today across 19 patches. Needless to say, I am currently building a new kernel with these patches and will be delivering a number of AMD Ryzen 5000 series and EPYC 7003 series benchmarks over the coming days looking at the performance and power efficiency of this new driver. Benchmarks across mobile, desktop, and servers with Zen 3 starting now. It's a long time with more than two years since the original AMD CPPC patches were posted, but great to see it come about and this time around hopefully has sufficient momentum to get worked on punctually and mainlined for benefiting the Steam Deck and the growing number of AMD Linux users at large. Stay tuned!
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week