我发现我可以使用/dev/cpu/cpu0/msr文件,使用msr_PKG_ENERG_STATUS,以及读取/sys/class/powercap/energy_uj文件来测量能耗。尽管这两个文件为特定程序提供了大致相同的值,但我想知道这两个程序中哪一个文件提供了更准确的结果,以及需要多个接口来获得能量读数。他们两个是相互依存的吗?
我真的不知道,但也许dev/cpu/cpu0/msr会为每个cpu提供能量,而/sys/class/powercap/energy_uj会提供全部能量(如果这是多线程程序)?
此外,我认为检查上述理论的最好方法是编写简单的多线程程序并比较这两个文件。