Id like to know what could explain the difference between CPU_CLK_UNHALTED.REF and CPU_CLK_UNHALTED.THREAD. Currently, there is a 1.5 factor between both clock. Note that I use a dual xeon W5580 and that I disabled HyperThreading and TurboBoost.
So, the difference between both clocks should be caused by the thread being idle? What can be the cause for idling? The thread is executing heavy computation in a tight loop and taking a full CPU HyperThreading is disabled. Can stalls (like L1I_MISS or ILD_STALL) be causing that?
I still dont understand why, when I perform a 20s system wide analysis in VTune, the total for CPU_CLK_UNHALTED.THREAD is 63G cycles. At 3.2Ghz, thats pretty close to 20s. But the total for CPU_CLK_UNHALTED.REF is 104G i.e. closer to 32s.
Im not exactly sure where is the over time view in VTune Amplifier XE 2011... The graph under the result grid shows that all clock ticks are attributed to only one thread. The core should be fully used only by that thread. I am using a real-time version of Linux that is supposed to guarantee that the core is used exclusively by myprocess/thread to minimize jitter. Can I use VTune to confirm this?
Thanks for your time.