Characterizing the impact of predicated execution on branch prediction

Scott A. Mahlke, Richard E. Hank, Roger A. Bringmann, John C. Gyllenhaal, David M. Gallagher, Wen-Mei W Hwu

Research output: Contribution to specialist publicationArticle


Branch instructions are recognized as a major impediment to exploiting instruction level parallelism. Even with sophisticated branch prediction techniques, many frequently executed branches remain difficult to predict. An architecture supporting predicated execution may allow the compiler to remove many of these hard-to-predict branches, reducing the number of branch mispredictions and thereby improving performance. We present an in-depth analysis of the characteristics of those branches which are frequently mispredicted and examine the effectiveness of an advanced compiler to eliminate these branches. Over the benchmarks studied, an average of 27% of the dynamic branches and 56% of the dynamic branch mispredictions are eliminated with predicated execution support.

Original languageEnglish (US)
Number of pages11
Specialist publicationProfessional Engineering
StatePublished - Dec 7 1994

ASJC Scopus subject areas

  • Mechanical Engineering

Cite this