CPU缩放:当前频率如何超出最小 – 最大范围?

我试图理解为什么我的CPU不能以更高的频率运行( 相关链接 )

有人可以解释一下,当定义最小值和最大值时,有效值最终会超出该范围吗?

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 3267000 $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 3300000 $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 1199960 $ cpupower frequency-info analyzing CPU 0: driver: intel_pstate CPUs which run at the same hardware frequency: 0 CPUs which need to have their frequency coordinated by software: 0 maximum transition latency: 0.97 ms. hardware limits: 800 MHz - 3.30 GHz available cpufreq governors: performance, powersave current policy: frequency should be within 3.27 GHz and 3.30 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency is 1.20 GHz. boost state support: Supported: yes Active: yes 25500 MHz max turbo 4 active cores 25500 MHz max turbo 3 active cores 25500 MHz max turbo 2 active cores 25500 MHz max turbo 1 active cores 

另外,有人可以解释cpuinfo_cur_freqscaling_cur_freq之间的区别吗?


我打开以解决我的问题的相关问题(可能包含此处未提及的可能有用的其他信息)

  • 当CPU为100°时,风扇不是全速,然后CPU频率降低
  • 如何启用Turbo-boost
  • CPU缩放:当前频率如何超出最小 – 最大范围?

附加信息:

 $ sudo rdmsr -a 0x19a 0 0 0 0 rdmsr: No CPU 4 

根据您的处理器和您的处理器情况而定, cpuinfo_cur_freqscaling_cur_freq是相同的。
对于某些处理器, cpuinfo_cur_freq涉及硬件读取,并且就时间而言可能“昂贵”,这是它需要sudo访问的原因。

您的CPU频率可能超出您设置的限制,因为如果负载足够轻,处理器本身可以在PLL(锁相环)上退避,无论您要求什么。 如果有实际工作要做,请不要担心CPU频率会很快boost。 在您的情况下,您正在使用性能调控器,这将提供最快的CPU频率增加时间。

对于你提到的其他问题,正如我在那里提到的,我认为涉及时钟调制,这对于intel_pstate CPU频率驱动程序来说是一个问题。 要确认或拒绝启用时钟调制,请将此结果添加到您的问题中:

 $ sudo modprobe msr $ sudo rdmsr -a 0x19a 

请注意,rdmsr原语需要包msr-tools 。 一旦提供,我将解码信息。