在每个 CPU 设备目录 ( /sys/devices/system/cpu/cpu*
) 中,都有一个名为 的目录thermal_throttle
,其中包含两个名为:
core_throttle_count
package_throttle_count
这些计数器的含义是什么?
我看到的结果似乎与我对这些计数器的最初理解相矛盾,因为它们具有描述性名称,或者我只是错过了一些东西。
我有一台带有超线程的单四核英特尔 CPU 的笔记本电脑。因此总共有八个逻辑 CPU。前面提到的两个计数器的值是:
cat /sys/devices/system/cpu/cpu*/thermal_throttle/package_throttle_count
:
1635649 1635647 1635649 1635648 1635648 1635650 1635650 1635649
cat /sys/devices/system/cpu/cpu*/thermal_throttle/core_throttle_count
:
0 368902 0 1288449 0 368902 0 1288451
我对“封装”的理解是指整个CPU芯片/插槽。因此,我本以为这些package_throttle_count
值都是相等的,但相反,有四个唯一的值,尽管值非常接近。起初,我认为这些值可能只是在cat
每个 CPU 的每次调用之间发生变化,但它们几乎是静态的。
然后对于core_throttle_count
I 有四个零和四个其他非零值。我期望共享物理核心的每个 CPU 上都有相同的计数器值。