摘要
针对动态分支预测错误率在时间上分布不均匀且高错误率比较集中的特点,该文提出一种可动态变换预测极性的分支预测方法。该方法对未经极性变换的原始动态分支预测错误率进行自适应监测,筛选出原始动态分支预测错误率高于阈值的预测错误高峰期,进而调整预测错误高峰期内分支预测器的预测极性,使经过极性变换的最终动态分支预测错误率在程序运行过程中始终低于设定的阈值。该文同时研究了全局监测、按组监测和局部监测3种分支预测错误率监测方式。实验结果表明,相同硬件资源下该方法比Gshare和Bi-Mode分支预测方法具有更高的分支预测精度。
Periods with high branch misprediction rate tend to be uneven and concentrated during execution of programs. To address this problem, a new branch prediction strategy is proposed, which based on dynamic polarity transformation. This approach monitors original branch misprediction rate whose polarity has not been transformed, and detects the periods with original branch misprediction rate higher than a threshold. These periods are called as peaks of misprediction. The polarity of original prediction results will be transformed to make the final prediction during peaks of misprediction. As a result, the final branch misprediction rate whose polarity has been transformed will always be lower than the threshold during execution of programs. The prediction method can be divided into three categories according to the monitoring mechanism, which are global monitor, set monitor and per-address monitor. The experimental results show that this methodology gives better prediction accuracy than Gshare and Bi-Mode prediction schemes for the same cost.
出处
《电子与信息学报》
EI
CSCD
北大核心
2013年第4期1001-1006,共6页
Journal of Electronics & Information Technology