The impact of if-conversion and branch prediction on program execution on the Intel® Itanium™ processor

MICRO(2001)

引用 83|浏览54
暂无评分
摘要
The research community has studied if-conversion for many years. However, due to the lack of existing hardware, studies were conducted by simulating code generated by experimental compilers. This paper presents the first comprehensive study of the use of predication to implement if-conversion on production hardware with a near-production compiler. To better understand trends in the measurements, we generated binaries at three increasing levels of if-conversion aggressiveness. For each level, we gathered data regarding the global runtime effects of if-conversion on overall execution time, register pressure, code size, and branch behavior. Furthermore, we studied the inherent characteristics of program control-flow structure related to branching to help determine fundamental limits of if-conversion. Our results show that on the Itanium™ processor if-conversion could potentially remove 29% of the branch mispredictions in SPEC2OOOCINT but that this accounts for a substantially smaller overall program speedup than previously reported.
更多
查看译文
关键词
program control-flow structure,smaller overall program speedup,if-conversion aggressiveness,production hardware,branch behavior,overall execution time,branch mispredictions,branch prediction,program execution,code size,processor if-conversion,simulating code
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要