AMD P-State Preferred Core Patches For Linux Updated, Will Be Enabled By Default
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:
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.
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.
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.
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.
10 Comments