10.3321/j.issn:0254-4164.2004.09.008
优化RSE开销的过程间栈寄存器分配
安腾处理器引入了硬件控制的寄存器栈,寄存器栈引擎能够自动地改变寄存器栈帧指针,对栈寄存器进行保存和恢复,从而有效地减少跨越过程调用时的寄存器值的保存和重新载入.每个过程使用的栈寄存器数量可以通过alloc指令显式地指定.通常的过程内寄存器分配方法给过程分配最大需要数量的栈寄存器.但过多的栈寄存器使用会引起寄存器栈溢出/载入.如果频繁出现这样的寄存器栈溢出/载入,将严重影响程序执行性能.该文提出了一种创新的算法,能够有效地减少RSE代价.该算法已经在开放源码编译器ORC中得到了实现.实验表明,SpecINT2000在使用该算法后性能普遍提高,perlbmk的性能提高了14%,而crafty也有3.2%的性能提高.
寄存器栈、寄存器栈引擎、寄存器栈溢出/载入
27
TP302(计算技术、计算机技术)
国家自然科学基金69933020;英特尔公司资助项目
2004-11-18(万方平台首次上网日期,不代表论文的发表时间)
共9页
1198-1206