英特尔 P-State 驱动程序看到更多针对 Linux 6.2 的混合 CPU 的修复

虽然在对内核进行各种改进以处理 P 和 E 内核的混合之后,Linux 上的 Intel Alder Lake 和现在的 Raptor Lake 混合处理器支持状况良好,但偶尔会有一些警告。本周发布了一组围绕硬件 P 状态 (HWP) 校准的英特尔 P 状态驱动程序修复程序,以确保它适用于所有英特尔混合平台。

英特尔工程师和 Linux 电源管理子系统维护者 Rafael Wysocki 发送了两个补丁集,以确保 HWP 校准在所有平台上都能正常工作。他用这封解释情况的求职信 总结了补丁系列:

intel_pstate 中的 HWP 校准需要以可靠的方式将 HWP 性能级别映射到 cpufreq sysfs 接口中使用的频率。在所有非混合“核心”平台上,将 HWP 性能水平乘以 100000 即可获得相应的频率,但在混合平台上,P 核心和 E 核心之间存在差异。

以前进行这项工作的尝试是基于使用 CPPC(特别是 _CPC 提供的标称性能值),但事实证明 CPPC 信息对此目的不够可靠,唯一的方法是使用P 核和 E 核的硬编码比例因子(幸运的是,这与非混合情况下的相同)。幸运的是,迄今为止,P 核的相同比例因子适用于所有混合平台。

该系列的第一个补丁通过避免在一个 CPU 上读取的 MSR 值将用于另一个 CPU 的性能扩展的情况,确保所有 CPU 将使用来自 MSR 的正确信息。

第二个实现了上述方法。

第一个补丁还进一步解释了:

intel_pstate 中的一些 MSR 访问是在运行代码的 CPU 上执行的,但来自它们的值用于其他 CPU 的性能扩展。

这是有问题的,例如,在 P-core 和 E-core 的 MSR_TURBO_RATIO_LIMIT 不同的混合平台上,因此从 P-core 上读取的值通常不适用于 E-core,反之亦然。

这是对 2021 年 9 月排队的英特尔 P-State HWP 校准代码的“修复”。

image.php_-10
Intel Core i9 13900K “ Raptor Lake”处理器在 Linux 上运行良好。

到目前为止,Rafael 已经将 P-State 补丁加入到他的linux-pm.git 的 linux-next 分支中,使其适用于 Linux 6.2。但考虑到它也是英特尔处理器的解决方案以及 P-State 驱动程序存在一年之久的问题,它也有可能被向后移植到现有的 Linux 稳定系列。

原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun197026.html

(0)
打赏 微信扫一扫不于多少! 微信扫一扫不于多少! 支付宝扫一扫礼轻情意重 支付宝扫一扫礼轻情意重
上一篇 2022年10月27日 上午8:47
下一篇 2022年10月28日 上午8:33

相关推荐