Home

Research

Classes

Resume

Personal Page

Olde Web Page

Links

CS497CZ Dynamic Optimization and Translation

Course Web Site

Course Project: Profile-Assisted Branch Prediction

Abstract

Branch missprediction is a major bottleneck limiting processor performance. To improve branch predictability, modern processors use path information to assist in making the prediction, specifically examining the direction of the n most recent branches, for some n. Often, this path information is useful as there is a correlation between nearby branches, aiding in the prediction. However, such an approach can only take advantage of correlation between a fixed, small number of branches. We propose using profiling to find better sets of correlations, and we show how doing so can enhance branch prediction for gshare-style as well as neural-network based branch predictors. Our results show that, if profiling information is used to find correlation, prediction accuracy improves substantially for a gshare-type predictor, especially with short history lengths, while the improvement in accuracy is limited with neural-network based predictors, especially with long history lengths.

Available in pdf.


Aqeel Mahesri
Last modified: Fri Feb 6 11:22:02 CST 2004