AMD 新技术可让 Linux 直接读取 CPU 最大频率,未来有望用于提升 Win11 系统调度能力

感谢IT之家网友 华南吴彦祖 的线索投递!

IT之家 5 月 10 日消息,Gazlog 发现,AMD 为 Linux AMD P-State 驱动提交了一项名为“CPPC HighestFreq”的新特性。

该特性允许 CPU 通过固件直接向操作系统(预计也将应用于 Win11)报告每个核心最真实的最大加速频率,从而跳过操作系统频率估算环节。

目前,Windows 和 Linux 等操作系统无法直接从固件读取 CPU 的加速频率信息,只能依赖 CPPC(IT之家注:Collaborative Processor Performance Control)提供的抽象性能数值,通过线性插值方法来估算加速行为。然而,在新款 Ryzen 处理器上,不同核心的性能与频率映射关系并非线性,这使得估算方法的准确性有所下降。

AMD 新技术可让 Linux 直接读取 CPU 最大频率,未来有望用于提升 Win11 系统调度能力

针对这一局限性,AMD 工程师 Mario Limonciello 于 5 月 4 日提交了上述 Linux 内核补丁,引入了 CPPC HighestFreq 寄存器的支持。

Limonciello 解释称,在某些系统上,由于各核心的性能与频率映射不呈线性关系,无法通过 CPPC 性能值的线性插值准确计算加速比。这一寄存器目前正通过 ACPI 规范工作组(ASWG)进行提案,有望纳入即将发布的 ACPI 6.7 规范。该寄存器可直接提供实际最高频率,从而消除系统估算需求,用于确定更精确的 CPU 容量计算和加速比。

AMD 新技术可让 Linux 直接读取 CPU 最大频率,未来有望用于提升 Win11 系统调度能力

现代 Ryzen 处理器已经依赖于 CPPC 技术来管理性能和频率。引入 HighestFreq 后,操作系统能够识别每个核心的真实最高频率上限,这对于充分利用 Ryzen 处理器已有的“首选核心”机制具有重要意义。

简单来说,由于半导体制造差异,同一芯片上不同核心的加速性能也存在不同差异,而调度器需要知晓哪些核心最能维持高频,才能将游戏等高负载任务优先分配到这些核心上。在当前 CPPC 技术中,操作系统因缺乏真实频率信息而无法进行最优的核间任务分配。该补丁未来将帮助操作系统更准确地选择最佳核心。

目前这一补丁针对 Linux 操作系统,旨在为 AMD P-State 驱动提供支持。ACPI 6.7 规范若正式包含该寄存器,Windows 11 也可能在后续版本中支持此功能,但这取决于微软是否在操作系统中添加相应支持。

相关阅读:

  • 《Windows 任务管理器 CPU 使用率为何不准?微软前工程师揭秘背后复杂原理》

  • 《微软工程师解释系统 CPU 速度显示机制:基于 Windows 估算推测而非实时监测》

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。