Dynamic Branch Prediction
Dynamic Branch Prediction: the hardware influences the prediction while execution proceeds.
Prediction is decided on the computation history of the program.
During the start-up phase of the program execution, where a static branch prediction might be effective, the history information is gathered and dynamic branch prediction gets effective.
In general, dynamic branch prediction gives better results than static branch prediction, but at the cost of increased hardware complexity.