SHORT Branch prediction miss rate/ratio

EVENTSET
PMC0  INST_RETIRED
PMC1  CPU_CYCLES
PMC2  BR_PRED
PMC3  BR_MIS_PRED
PMC4  INST_SPEC


METRICS
Runtime (RDTSC) [s] time
Clock [MHz] 1.E-06*PMC1/time
CPI  PMC1/PMC0
Branch rate   PMC2/PMC0
Branch misprediction rate  PMC3/PMC0
Branch misprediction ratio  PMC3/(PMC2+PMC3)
Instructions per branch  PMC0/(PMC2+PMC3)

LONG
Formulas:
CPI = CPU_CYCLES/INST_RETIRED
Branch rate = BR_PRED/INST_RETIRED
Branch misprediction rate =  BR_MIS_PRED/INST_RETIRED
Branch misprediction ratio = BR_MIS_PRED/(BR_PRED+BR_MIS_PRED)
Instructions per branch = INSTR_RETIRED_ANY/(BR_PRED+BR_MIS_PRED)
-
The rates state how often in average a branch or a mispredicted branch occured
per instruction retired in total. The Branch misprediction ratio sets directly
into relation what ratio of all branch instruction where mispredicted.
Instructions per branch is 1/Branch rate.

