Evaluating the Effects of Predicated Execution on Branch Prediction |
| |
Authors: | Gary Tyson Matthew Farrens |
| |
Affiliation: | 1.Department of Computer Science,University of California, Riverside,Riverside,USA;2.Department of Computer Science,University of California, Davis,Davis,USA |
| |
Abstract: | As microprocessor designs move towards deeper pipelines and support for multiple instruction issue, steps must be taken to alleviate the negative impact of branch operations on processor performance. One approach is to use branch prediction hardware and perform speculative execution of the instructions following an unresolved branch. Another technique is to eliminate certain branch instructions altogether by translating the instructions following a forward branch into predicate form. Both these techniques are employed in many current processor designs. This paper investigates the relationship between branch prediction techniques and branch predication. In particular, we are interested in how using predication to remove a certain class of poorly predicted branches affects the prediction accuracy of the remaining branches. A variety of existing predication models for eliminating branch operations are presented, and the effect that eliminating branches has on branch prediction schemes ranging from simple prediction mechanisms to the newer more sophisticated branch predictors is studied. We also examine the impact of predication on basic block size, and how the two techniques used together affect overall processor performance. |
| |
Keywords: | |
本文献已被 SpringerLink 等数据库收录! |
|