Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Evaluating the effects of predicated execution on branch prediction

Journal Article · · International Journal of Parallel Programming
OSTI ID:273920
 [1];  [2]
  1. Univ. of California, Riverside, CA (United States)
  2. Univ. of California, Davis, CA (United States)

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.

OSTI ID:
273920
Journal Information:
International Journal of Parallel Programming, Journal Name: International Journal of Parallel Programming Journal Issue: 2 Vol. 24; ISSN IJPPE5; ISSN 0885-7458
Country of Publication:
United States
Language:
English

Similar Records

Using predicated execution to improve the performance of a dynamically scheduled machine with speculative execution
Journal Article · Sat Jun 01 00:00:00 EDT 1996 · International Journal of Parallel Programming · OSTI ID:273922

Branch classification: A new mechanism for improving branch predictor performance
Journal Article · Sun Mar 31 23:00:00 EST 1996 · International Journal of Parallel Programming · OSTI ID:273919

Controlling prediction functional blocks used by a branch predictor in a processor
Patent · Tue Sep 13 00:00:00 EDT 2022 · OSTI ID:1925103