强制 Haswell CPU 固定频率

强制 Haswell CPU 固定频率

为了保证基准测试的稳定性,我希望在运行 Fedora 23 的 Dell R430 测试服务器中以标称频率运行 E5-2680 v3 2.5 GHz CPU——不多也不少。

我已禁用该intel_pstate驱动程序,并且/proc/cpuinfo似乎表明它们正在以请求的速度运行,所有内核均显示 ~2500 MHz。

然而:cpufreq程序显示频率不是固定的,例如在一个核心运行重负载的服务器上:

# cpupower monitor -m Mperf
    |Mperf               
CPU | C0   | Cx   | Freq 
   0|  3.48| 96.52|  1198
   1|  7.28| 92.72|  1198
   2|  4.88| 95.12|  1198
   3|  3.76| 96.24|  1198
   4|  3.53| 96.47|  1198
   5|  7.17| 92.83|  1198
   6|  4.18| 95.82|  1198
   7|  8.75| 91.25|  1198
   8|  8.51| 91.49|  1198
   9|  6.41| 93.59|  1198
  10| 99.98|  0.02|  2896
  11|  7.33| 92.67|  1198

因此,显然有一个核心的运行速度高于标称速率,而其他 11 个核心则处于空闲状态。

这可能cpupower给我提供了错误的信息,但如果不是的话,CPU 核心以一致的速度运行对于我的基准测试至关重要。

我是否遗漏了什么,或者是否无法按照我的要求调整速度?

答案1

我随后发现这是因为 BIOS 系统配置文件设置被设置为默认的“SysDbpm”(BIOS 控制的 Speedstep)而不是“OsDbpm”(O/S 控制)。

通过正确设置 BIOS 并重新启动,acpi-cpufreq驱动程序重新获得了对 CPU 频率的正确控制。

相关内容