The ia 64 32 system developer mentions the following:
"MSR_PKG_ENERGY_STATUS is a read-only MSR. It reports the actual energy use forthe package domain. This MSR is updated every ~1msec."
Is there any way for one to increase the rate at which MSRs are updated? I'm interested in checking the energy consumed by core sections which last as short as a microsecond. In other words can I increase the update rate by a 100-1000 fold without causing a high overhead?
The count reported from this MSR is for the entire processor -- including all the cores. It is not directly possible to get per core readings for energy.
The access latency for reading this register is also fairly sizable, so reading it at a frequency higher than 1000 times per sec may have significant overhead.
If you need to isolate the consumption of a specific program or thread, you will need to use a script to allow it to run continously and read the value over a reasonable duration, and then normalize appropriately.