Characterizing the Impact of Predicated Execution on Branch Prediction (PostScript version, PDF version)
S. A. Mahlke, R. E. Hank, R. A. Bringmann, J. C. Gyllenhaal, D. M. Gallagher, and W. W. Hwu
Proceedings of the 27th International Symposium on Microarchitecture, December 1994, pp. 217-227
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.
[ IMPACT Main Page |
Team Members |
Publications |
Software |
FAQ ]