首页 期刊 计算机研究与发展 二进制翻译中动静结合的寄存器分配优化方法 【正文】

二进制翻译中动静结合的寄存器分配优化方法

作者:王军; 庞建民; 傅立国; 岳峰; 单征; 张家豪 数学工程与先进计算国家重点实验室(战略支援部队信息工程大学); 郑州450002
二进制翻译   寄存器分配   翻译器qemu   tcg中间表示  

摘要:针对二进制翻译器QEMU(quick emulator)在寄存器映射时未考虑基本块之间以及循环体之间对寄存器需求的差异,造成不必要的寄存器溢出而导致的冗余访存开销问题,引入全局寄存器静态映射和局部寄存器动态分配思想,提出高效的基于优先级的动静结合寄存器映射优化算法.该算法首先基于源平台不同寄存器使用的统计特征和各变量的生命周期,静态进行全局寄存器映射;然后依据中间表示与源平台寄存器之间的映射关系,获取基本块中间指令需求寄存器次数并排序确定寄存器分配的优先级;之后依据优先级顺序动态进行寄存器分配,从而减少寄存器溢出次数,降低生成的本地代码的膨胀率以及访存次数,提高目标程序性能.对NBENCH、典型的递归程序和SPEC2006的测试表明:该算法有效地减少了本地代码的访存次数,提高了程序性能,平均比优化前性能分别提升了8.67%,8.25%,8.10%.

注:因版权方要求,不能公开全文,如需全文,请咨询杂志社

学术咨询 免费咨询 杂志订阅