Intel 64 and IA-32 Architectures Software Developers Manual Volume 3B, System Programming Guide Part 2

Table Of Contents
A-118 Vol. 3
PERFORMANCE-MONITORING EVENTS
C4H 02H BR_INST_RETIR
ED.MISPRED_N
OT_TAKEN
Retired branch
instructions
that were
mispredicted
not-taken
This event counts the number of branch
instructions retired that were mispredicted
and not-taken.
C4H 04H BR_INST_RETIR
ED.PRED_TAKE
N
Retired branch
instructions
that were
predicted taken
This event counts the number of branch
instructions retired that were correctly
predicted to be taken.
C4H 08H BR_INST_RETIR
ED.MISPRED_TA
KEN
Retired branch
instructions
that were
mispredicted
taken
This event counts the number of branch
instructions retired that were mispredicted
and taken.
C4H 0AH BR_INST_RETIR
ED.MISPRED
Retired
mispredicted
branch
instructions
(precise event)
This event counts the number of retired
branch instructions that were mispredicted
by the processor. A branch misprediction
occurs when the processor predicts that the
branch would be taken, but it is not, or vice-
versa. Mispredicted branches degrade the
performance because the processor starts
executing instructions along a wrong path it
predicts. When the misprediction is
discovered, all the instructions executed in
the wrong path must be discarded, and the
processor must start again on the correct
path.
Using the Profile-Guided Optimization (PGO)
features of the Intel® C++ compiler may help
reduce branch mispredictions. See the
compiler documentation for more information
on this feature.
Table A-7. Non-Architectural Performance Events for Intel Atom Processors
Event
Num.
Umask
Value Event Name Definition Description and Comment