HP Caliper User's Guide

stall Event Set
The stall event set provides information on primary CPU performance limiters by
breaking the CPI into seven components.
If you use this event set, the default is to make the measurements irrespective of CPU
operating state (that is, user, system, or interrupt states). By default, the idle state is
not included in the measurement. You can use command-line options to limit the scope
of the measurement. Specifically, you can:
Limit measurement to a specific privilege level: -m
event_set[:all|user|kernel]
Include idle: --exclude-idle False
Exclude the interruption state: --measure-on-interrupts off
Only measure the interruption state: --measure-on-interrupts only
Metrics Available from this Measurement
The following metrics are available from this event set. These descriptions do not take
into account any command-line options you might use.
The metrics are:
Raw CPI
The raw CPI is computed using all instructions retired. This includes nops and
predicated off instructions. The relationship between effective and raw CPI values
can be obtained from the cpi measurement.
Itlb
This counts the number of cycles where there are no back-end stalls or flushes, the
decoupling buffer is empty, and the front end is stalled due to an L1 TLB miss that
is serviced either by the L2 TLB or the HPW if an L2 TLB and the TLB entry is
found in somewhere is the cache hierarchy. This does not count cycles attributable
to software TLB miss handling when the HPW fails to find the requisite translation.
Icache
This counts the number of cycles where there are no back-end stalls or flushes, the
decoupling buffer is empty, and the front end is stalled due to an instruction cache
miss at any level of the cache hierarchy (L1, L2, L3).
Branch
This counts the number of stall cycles associated with branch execution. There are
two components to this category. The first is stalls due to execution bubbles caused
by a front-end resteer, that is, a taken branch. The second component is stalls due
to the recirculation of branches while they are waiting for branch history
information used in predicting branch direction.
Unstall Execute
This is the percentage of cycles when the back end is executing instructions without
stalling. Depending on code characteristics and resource limitations, the number
stall Event Set 339