New Patches Allow More Easily Managing The AMD P-State Linux Driver

Written by Michael Larabel in AMD on 20 November 2022 at 06:30 AM EST. 43 Comments
AMD --
Since the introduction of the AMD P-State driver to the mainline kernel, enthusiasts and gamers have been experimenting with the amd_pstate driver and some distributions like Ubuntu have went with using this driver in place of ACPI CPUFreq by default for Zen 2 and newer processors. Patches posted this week by AMD make it easier to switch between the AMD P-State driver and ACPI CPUFreq.

AMD previously worked on some patches to improve the handling for those wanting to use amd_pstate. But for those having ACPI CPUFreq built-in as is commonly the case, you need to worry about blocking the init call for the ACPI CPUFreq code or otherwise rebuilding the kernel without it built-in. The experience just hasn't been as graceful as using Intel P-State. But now there are patches that make it more trivial.

A set of five patches sent out on Thursday now make the AMD P-State driver a built-in type to resolve the driver loading sequence issue. There are also new kernel parameters to control the behavior.

In addition to making the AMD P-State driver built-in, the amd_pstate=disable option is introduced as a kernel boot option for those not wanting to load the AMD P-State driver. The amd_pstate=passive option is also introduced for loading the AMD P-State driver in passive mode.


AMD isn't yet wanting to make the AMD P-State driver enabled by default yet in the upstream kernel as they do acknowledge some performance issues compared to ACPI CPUFreq. I've noted some of those regressions before while the hope is the new AMD P-State EPP code will eliminate those regressions. Once AMD P-State EPP is upstreamed, they hope that CPU frequency scaling management will be in good shape for the default. The patch series noted:
Set the `amd_pstate` driver disabled by default because of performance degradation on a number of AMD ASICs in the passive mode driver, especially the shared memory support processors.

EPP support for the amd_pstate driver is under review. With EPP support, the said performance issue is resolved. Once that gets upstream, the `active` mode amd_pstate_epp driver may be enabled by default.

These new AMD P-State patches to make it built-in and the new options will hopefully be picked up for the v6.2 kernel cycle. However, with AMD P-State EPP driver code still being under review it's not clear that it will be ready for 6.2 so may wait until a later kernel release in 2023.
Related News
About The Author
Author picture

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