Software Tuning, Performance Optimization & Platform Monitoring
Discussion regarding monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform updating.
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

High number of retired instructions

Tomer_M_
Beginner
759 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
Honored Contributor III
759 Views

Just what worshippers of instructions per clock need!

Maybe a timer wraparound problem?

0 Kudos
Tomer_M_
Beginner
759 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.

0 Kudos
Reply