My source code ZFreq.c displays the frequencies of the i7 cores
I'm using the MSR registers to read the core ratios multiplied by the current external clock from the SMBIOS.
However whatever the system load is, the MSR IA32_PERF_STATUS never returns the values found in the turbo zone given by MSR_TURBO_RATIO_LIMIT.
To be short IA32_PERF_STATUS never goes above MSR_PLATFORM_INFO.MaxNonTurboRatio
Please help me to program correctly those MSR
It depends on what you mean by 'per logical core its non halted activity'.
Usually I look at the 2 fields separately.
1) average non-halted frequency over the interval = TSC_frequency * delta(CPU_CLK_UNHALTED.THREAD) / delta(CPU_CLK_UNHALTED.REF)
2) %of time cpu is unhalted = 100 * delta(CPU_CLK_UNHALTED.REF)/delta(TSC)
Item 1) tells me "when the cpu was running (not halted), what was the average frequency". Item 2) tells me "what % of time was the cpu running".
There is an article http://software.intel.com/en-us/articles/measuring-the-average-unhalted-frequency.