AMD P-State Preferred Core Patches For Linux Updated, Will Be Enabled By Default

Written by Michael Larabel in AMD on 15 August 2023 at 05:55 AM EDT. 10 Comments
AMD's Preferred Core feature continues working its way toward the Linux kernel for this functionality that's been around since Zen 2.

Since the AMD Ryzen 3000 series has been the notion of "preferred cores" that are communicated to the operating system via ACPI CPPC as is used now by the AMD P-State driver on Linux. AMD Linux engineers are working on properly supporting preferred cores for Linux. As was explained in their original patch posting:
The core frequency is subjected to the process variation in semiconductors. Not all cores are able to reach the maximum frequency respecting the infrastructure limits. Consequently, AMD has redefined the concept of maximum frequency of a part. This means that a fraction of cores can reach maximum frequency. To find the best process scheduling policy for a given scenario, OS needs to know the core ordering informed by the platform through highest performance capability register of the CPPC interface.

Earlier implementations of AMD Pstate Preferred Core only support a static core ranking and targeted performance. Now it has the ability to dynamically change the preferred core based on the workload and platform conditions and accounting for thermals and aging.

AMD Pstate driver utilizes the functions and data structures provided by the ITMT architecture to enable the scheduler to favor scheduling on cores which can be get a higher frequency with lower voltage. We call it AMD Pstate Preferred Core.

This preferred core handling infrastructure may also become more important in future generations if AMD Ryzen processors go in a hybrid design with a mix of normal and "C" energy-efficient cores, as has been rumored for a while.

AMD Ryzen 7000 series CPUs

Sent out today were the v2 patches of this AMD P-State Preferred Core handling for the Linux kernel. There are various fixes. Most notable with this change is the preferred core functionality being enabled by default where as in the original patches a kernel module option had to be used to actually enable the feature.

Those wishing to test AMD Preferred Cores for Linux can see that patch-set. Though given the current timing it's not clear that this code will be ready for the upcoming v6.6 kernel cycle but may have to wait until a later kernel release before seeing mainline.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week