1

我正在使用 acpi_cpufreq 驱动程序。请帮助我理解为什么从 time_in_state 计算的平均频率为:

For each line in time_in_state file:
1) Read line from time_in_state file, get frequency: freq
2) Get delta time betwen previous and current reading: delta_times
3) total_freq_times += freq*delta_times 
4) total_times += delta_times

Average frequency = total_freq_times/total_times

当涡轮增压开启时,从 i7z 工具或通过读取 msr 寄存器收集的平均频率在边界不相等?

我知道 time_in_state 中的第一行频率代表涡轮模式,在我的例子中是 1996000。

我在 CPU 上运行平衡负载,查看 CPU 使用率 ~70-80%。当我按 time_in_state 计算平均频率时,我得到 1899249.88(并且我在 time_in_state 的第一行计数器处没有看到任何增量),但是当我读取 msr 或通过 i7z 工具观看时,我看到 2129067.50。

根据 i7z CPU 已经处于 turbo 模式但 time_in_state 显示不...

有人可以解释一下吗?

4

0 回答 0