有没有一种好的方法可以从 Linux 主机监控和/或控制 Nehalem 处理器上的 Intel Turbo Boost 技术?我希望在运行库存或实时 MRG 内核的 RHEL/CentOS 5.5 主机上执行此操作。
这里有没有人找到在您的环境中利用 Turbo Boost 的好方法?
答案1
i7z是一款用于在 Linux 上监控支持 Intel Turbo Boost 的 Intel CPU(i7 及更高版本)的良好工具。
如果它正常工作,您将看到当前频率随着向 CPU 添加负载而发生变化,这是由于乘数在负载下动态增加。尝试BurnP6为了这。
基本描述(pdf)电源状态:
C0 - 活动状态。在 C0 中,指令由内核执行。对于英特尔® Turbo Boost 技术,C0 中的内核被视为活动内核。
C1 - 暂停状态。处于 C1 状态时,不会执行任何指令。对于英特尔® Turbo Boost 技术,处于 C1 状态的内核被视为活动内核。
C3 - 在 C3 模式下,核心 PLL 会关闭,所有核心缓存都会被刷新。对于英特尔® Turbo Boost 技术,C3 模式下的核心被视为非活动核心。
C6 - 在 C6 模式下,核心 PLL 会关闭,核心缓存会被刷新,核心状态会保存到最后一级缓存中。电源门用于将功耗降至接近零。对于英特尔® Turbo Boost 技术,C6 模式下的核心被视为非活动核心。
C7-Sandy Bridge 及更高版本引入了新的、稍深一点的睡眠状态。
请注意,C6 和 C7 状态是“深度”睡眠模式,可能会产生一些延迟损失,这对于某些类型的服务器工作负载来说可能不太好。有关更多详细信息,请参阅英特尔嵌入式应用的电源管理(pdf)。
Turbo Boost 处于 P0 状态,与睡眠状态相反。当只有少数核心处于活动状态时,它会提高 CPU 倍频,但在极端多核负载下会降低倍频,以防止 CPU 出现热问题。
一般 ACPI 支持必须在 Linux 中启用,i7z 才能显示正确的温度,并且 Turbo Boost(高于默认值的动态乘数)才能正常工作。您可以在 Linux 上找到有关如何启用英特尔 Turbo Boost 的有用信息这邮政。
答案2
XFreq 是一个显示 RT turbo 活动的 GUI 源代码 @http://code.google.com/p/xfreq
XFreq 提供了一些小部件来显示 Intel Core i7 处理器的频率(包括 turbo)、温度、C 状态和其他功能。它还针对 Core 2 和其他 Intel 架构进行了编程。