On Thu, 26 Mar 2020, Zhang Rui wrote: > what does "rdmsr 0x64D" return when there are 3 fixed counters? $ sudo rdmsr 0x64D 56bcb63e $ dmesg | fgrep RAPL [ 1.762354] RAPL PMU: API unit is 2^-32 Joules, 3 fixed counters, 655360 ms ovfl timer [ 1.762359] RAPL PMU: hw unit of domain pp0-core 2^-14 Joules [ 1.762363] RAPL PMU: hw unit of domain package 2^-14 Joules [ 1.762365] RAPL PMU: hw unit of domain pp1-gpu 2^-14 Joules [ 3.179900] intel_rapl_common: Found RAPL domain package [ 4.053170] intel_rapl_common: Found RAPL domain package [ 4.055152] intel_rapl_common: Found RAPL domain core [ 4.057066] intel_rapl_common: Found RAPL domain uncore $ > if it returns 0, which I think it is the case, does reading the msr > from other cpus return non-zero value, by using rdmsr -p parameter? Well, it didn't, but why not? CPU 0 MSR 0x64d value: 57a289a6 CPU 1 MSR 0x64d value: 57a28bf7 CPU 2 MSR 0x64d value: 57a28e15 CPU 3 MSR 0x64d value: 57a28f3b CPU 4 MSR 0x64d value: 57a28fe8 CPU 5 MSR 0x64d value: 57a2912a CPU 6 MSR 0x64d value: 57a2923d CPU 7 MSR 0x64d value: 57a29327 > > > if that is not the problem, please attach the output of "grep . > > > /sys/class/powercap/intel-rapl*/name" in both cases. Here's the "3 counters case" (same running kernel as above): $ sudo egrep -r . /sys/class/powercap/intel-rapl*/name /sys/class/powercap/intel-rapl:0:0/name:core /sys/class/powercap/intel-rapl:0:1/name:uncore /sys/class/powercap/intel-rapl:0/name:package-0 /sys/class/powercap/intel-rapl-mmio:0/name:package-0 $ -Kenny -- Kenneth R. Crudup Sr. SW Engineer, Scott County Consulting, Silicon Valley