Branch predictor (BP) is an essential component in modern processors since high BP accuracy can improve performance and reduce energy. However, reducing latency and storage overhead of BP while maintaining high accuracy presents significant challenges.

W present a survey of dynamic branch prediction techniques. This paper will be useful for computer architects, processor designers and researchers. Especially in light of Spectre and Meltdown vulnerabilities, which arise due to speculative execution such as branch prediction, a relook on branch predictors is very important.

The paper is available here (the filesize exceeded 1.91MB limit, so I could not upload the pdf here).