Simulation of Keeton et al. 1998 using an OLTP (online transaction workload) on a PentiumPro multiprocessor reported a misprediction rate of 14% with an branch instruction frequency of about 21%.
The speculative execution factor, given by the number of instructions decoded divided by the number of instructions committed, is 1.4 for the database programs.
Two different conclusions may be drawn from these simulation results:
- Branch predictors should be further improved
- and/or branch prediction is only effective if the branch is predictable.
If a branch outcome is dependent on irregular data inputs, the branch often shows an irregular behavior. ? Question: Confidence of a branch prediction?