A new set of patches from AMD Linux engineers today aim to boost the performance for heterogeneous CPU designs such as the recent Ryzen AI 300 “Strix Point” SoCs that have multiple core types.
Hitting the Linux kernel mailing list today is a new set of patches for properly detecting maximum performance values of heterogeneous AMD CPU designs. AMD Linux engineer Mario Limonciello explained in the patch series:
“AMD heterogeneous designs such as the Ryzen AI 300 series processors have multiple core types that can reach different maximum clock values.
This series uses the CPUID Fn_0x80000026 to detect such designs and to correct configure the boost numerator that is used to calculate maximum frequency.
…
AMD heterogeneous designs include two types of cores:
* Performance
* EfficiencyEach core type has different highest performance values configured by the platform. Drivers such as `amd_pstate` need to identify the type of core to correctly set an appropriate boost numerator to calculate the maximum frequency.
X86_FEATURE_HETERO_CORE_TOPOLOGY is used to identify whether the SoC supports heterogeneous core type by reading CPUID leaf Fn_0x80000026.
On performance cores the scaling factor of 196 is used. On efficiency cores the scaling factor is the value reported as the highest perf. Efficiency cores have the same preferred core rankings.”
See this patch series for those interested in this latest AMD Ryzen Linux performance work. It should help at least Ryzen AI 300 laptops and future heterogeneous designs.
I will be running some benchmarks in the coming days of these patches on the Ryzen AI 9 365 and Ryzen AI 9 HX 370 laptops that I have around.