Stall count, IPC histogram and xnops

Usage of VEX tools

Stall count, IPC histogram and xnops

Postby frb » Fri Jul 14, 2006 10:20 am

Some users detected that there is a (small) mismatch between the reported number of executed/stalled cycles and the number that you would get by adding the cycles reported in the width[] histogram array.

The cause of that is the (mis-)counting of the xnop (multi-cycle no-op) cycles that are not accounted for in any of the width[] elements. Because these can be non-architectural cycles (for example, a scoreboarded machine would ignore the xnop directive), it is kind of hard to get the histogram right no matter what.

To get a more precise IPC histogram, you can turn off the generation of xnops (-fno-xnop compiler flag) and force the compiler to emit architectural empty cycles which will be appropriately accounted for in the width[] histogram.

However, keep in mind that libraries and initialization routines are precompiled with xnop generation turned on, so the code that executes in libraries (as well as crt0.o, etc.) will suffer from the same problem and a small mismatch is likely to always be there.

-- Paolo
frb
 
Posts: 62
Joined: Thu Nov 12, 2009 3:44 pm

Postby sblues » Fri Jul 14, 2006 4:59 pm

So the missing cycles should be assumed as width[0] from the "Libraries and initialization routines" and the number of the "Execution Cycles"(in ta.log.*) is the correct number?
sblues
 
Posts: 1
Joined: Thu Jul 13, 2006 5:36 pm

Postby frb » Fri Jul 14, 2006 5:16 pm

Yes, the number of "execution cycles" is always the correct number. The histogram suffers from the problems I described.

I don't believe it's correct to assume that xnop cycles belong to the "width[0]" bucket in all cases (see comments in the first posting about scoreboarding). However, if that is acceptable for the experiments you're doing, it could be a reasonable interpretation.

I'll be posting a new version (2.40) soon that will report "Nop Cycles" explicitly, so that it's clearer what happens.

-- Paolo
frb
 
Posts: 62
Joined: Thu Nov 12, 2009 3:44 pm

Postby frb » Tue Aug 01, 2006 10:51 pm

NOTE: VERSION 3.40 INCLUDES REPORTING OF xnops IN THE ta.log.# FILES
frb
 
Posts: 62
Joined: Thu Nov 12, 2009 3:44 pm


Return to VEX Tools



Who is online

Users browsing this forum: No registered users and 8 guests