Software Tuning, Performance Optimization & Platform Monitoring
Discussion around monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform monitoring
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

High number of retired instructions

Tomer_M_
Beginner
122 Views

I'm using Intel PCM to sample the number of retired instructions every two seconds:

pcmState_prev = pcmState_curr;
pcmState_curr = getSystemCounterState();
m_committed_instructions = getInstructionsRetired(pcmState_prev,pcmState_curr);

This usually works well with values ranging from 1e+8 and 1e+10 committed instructions per second on Haswell (i7-4790 CPU @ 3.60GHz). Every few hours I would get a sample with around 9e+18 committed instructions per second. Am I using the interface incorrectly? Thanks!

Tomer.

 

0 Kudos
2 Replies
TimP
Black Belt
122 Views

Just what worshippers of instructions per clock need!

Maybe a timer wraparound problem?

Tomer_M_
Beginner
122 Views

I wouldn't mind having 9e+18 IPS :-)

I suspect a wraparound problem in PCM or the counter itself. I added an assertion on m_committed_instructions right after the PCM call and caught it, even before I divided by the duration of the sample.

Reply