Patches were posted today to the Linux kernel mailing list for enabling a new feature called AMD CPPC Performance Priority as a new hardware feature being found with “future AMD processors”…. Which given the timing of these patches, almost certainly means the upcoming Zen 6 processors.
AMD CPPC Performance Priority is being added to the AMD P-State Linux driver used for handling of the CPU performance states / frequency scaling as part of the Linux CPUFreq power management code. AMD CPPC Performance Priority is described as:
“This feature allows userspace to specify different floor performance levels for different CPUs. The platform firmware takes these different floor performance levels into consideration while throttling the CPUs under power/thermal constraints.
The presence of this feature is advertised through bit 16 of EDX register for CPUID leaf 0x80000007. The number of distinct floor performance levels supported on the platform will be advertised through the bits 32:39 of the MSR_AMD_CPPC_CAP1. Bits 0:7 of a new MSR MSR_AMD_CPPC_REQ2 (0xc00102b5) will be used to specify the desired floor performance level for that CPU.”
Basically the ability for the user — or a user-space daemon or similar — to be able to set desired performance minimums for different CPU cores that will be taken into account when making CPU power/thermal changes. This can be useful when paired with pinning important tasks to a given core and wanting to set a high performance minimum for that core(s), pinning low priority tasks to given core(s) and lowering the floor for those cores, and similar situations for having greater control over the desired minimum performance levels for different cores depending upon your setup.
With these patches to the AMD P-State Linux driver, via sysfs there are new “floor_freq” and “floor_count” attributes for the system administrator or user-space daemons or similar for specifying their desired performance floor values.
This is an interesting new capability for the (presumably) Zen 6 processors for greater control and extension of the existing ACPI Collaborative Processor Performance Control (CPPC) capabilities. Presumably Microsoft Windows will be implementing similar support too for this AMD CPPC Performance Priority.
The AMD P-State patches for this AMD CPPC Performance Priority functionality is out for review on the kernel mailing list.
