Abstract

Branch target buffers, or BTBs, can be used to improve CPU performance by maintaining target and history information of previously executed branches. We present trace-driven simulation results comparing counter based and correlation-based prediction schemes for a variety of branch target buffer sizes. We report relative performance estimates to show both the relative merits of various techniques and their effects on performance for current microprocessors. Our results indicate that counter-based schemes outperform correlation-based schemes for small buffers, but that the opposite becomes true as buffer size increases. This is due to the importance of hit ratio over prediction success in branch target buffer design. The transition point between counter- and correlation-based schemes is dependent on the size of the working set of dynamic branches for a given collection of benchmark programs. Our results also show that for small BTBs, hit ratio and hence performance decrease as the number of correlation bits increase. This is due to non-random distribution of correlation vectors causing increased collisions for BTB locations. Only when a BTB becomes large enough to capture the working set of a program's branch and correlation vector references do the expected benefits of correlation-based schemes manifest themselves.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.