Improving the accuracy of static branch prediction using branch correlation

Improving the accuracy of static branch prediction using branch correlation
复制标题

使用分支相关性提高静态分支预测的准确性

DOI:
--
复制
发表时间:
1994
期刊:
ASPLOS VI
影响因子:
--
通讯作者:
Michael D. Smith
Michael D. Smith
中科院分区:
--
文献类型:
--
作者:
C. Young;Michael D. Smith

文献摘要

被引文献

相似文献

基于历史的分支预测的最新工作使用新颖的硬件结构来捕获分支相关性并提高分支预测精度。我们提出了一个基于配置文件的代码转换,利用分支相关性,以提高静态分支预测方案的准确性。我们的一般方法通过程序基本块的复制和放置,将分支历史信息编码在程序计数器中。对于八个分支的相关历史,我们的实验结果实现了高达14.7%的预测精度比传统的基于配置文件的预测,而没有任何增加的动态指令数的基准测试应用程序的改善。在大多数这些应用程序中,代码重复增加的代码大小不到30%。对于具有呈现指数分支路径且没有分支相关性的代码段的少数应用程序,简单的编译时编译可以将这些分支作为代码转换候选项来消除。
Recent work in history-based branch prediction uses novel hardware structures to capture branch correlation and increase branch prediction accuracy. We present a profile-based code transformation that exploits branch correlation to improve the accuracy of static branch prediction schemes. Our general method encodes branch history information in the program counter through the duplication and placement of program basic blocks. For correlation histories of eight branches, our experimental results achieve up to a 14.7% improvement in prediction accuracy over conventional profile-based prediction without any increase in the dynamic instruction count of our benchmark applications. In the majority of these applications, code duplication increases code size by less than 30%. For the few applications with code segments that exhibit exponential branching paths and no branch correlation, simple compile-time heuristics can eliminate these branches as code-transformation candidates.