学位专题

目录>
<

基于资源优化利用的动态寄存器重命名算法

高淞
中国科学院自动化研究所
引用
从应用程序中开发利用尽量多的指令级并行度(Instruction Level Parallelism,简称ILP)是现代高性能超标量处理器不断追求更高性能的主要手段.为了做到这一点,现代处理器不断地增大其硬件指令窗口的大小以及指令发射的宽度,从而导致了处理器中很多部件规模的增大,比如取指队列,发射队列,重定序缓冲区(Re-Order Buffer,简称ROB),以及物理寄存器文件.该论文所关注的就是由物理寄存器文件规模增大所带来的问题,并且尝试提出解决问题的方法.物理寄存器文件的访问时间直接决定于寄存器文件规模的大小和读写端口的数量.在读写端口数量基本不变甚至继续增加的情况下,寄存器文件的访问时间随着物理寄存器数量的增加而不断延长,已经成为了处理器的关键延迟之一,以及限制处理器性能提高的主要瓶颈.对此,我们分析并统计了当前高性能处理器中物理寄存器的使用情况,发现物理寄存器资源的利用中存在着很大的浪费.通过寻求并分析了各种解决该问题的可能途径,我们提出了一种新的通过两级寄存器文件实现的寄存器动态重命名算法LAER(Late Allocation and Early Release).该算法将物理寄存器的分配从指令译码阶段推迟到指令发射执行的时候,并提前释放正常情况下不会再用到的寄存器以供后续指令使用,从而大大缩短了物理寄存器被占用的时间.LAER算法通过减少资源浪费提高了物理寄存器的利用效率,有效地减轻了处理器对物理寄存器数量的需求,从而消除了由寄存器文件访问时间所产生的性能瓶颈.我们详细模拟了采用LAER算法和传统重命名算法的处理器模型,并基于Spec95基准程序进行了性能评估.实验证明,LAER算法可以在增加很小的硬件代价和逻辑复杂度的情况下,将处理器对整数和浮点程序的寄存器压力和需求分别减少46﹪和60﹪.这就意味着可以用更少的物理寄存器,更快的访问速度,进而更高的时钟频率,得到同样多的指令级并行度;或者用同样多的物理寄存器同样的时钟频率去支持更大的指令窗口,从而得到更高的处理器性能.最后,我们针对算法中存在的问题以及所观察到的新的程序特性,对LAER算法的进一步改进和完善提出了新的设想和思路,并提供了理论和实验依据.

寄存器重命名;指令级并行;指令窗口;乱序执行;动态调度

中国科学院自动化研究所

硕士

模式识别与智能系统

王东琳

2004

中文

TP332.11

58

2005-06-27(万方平台首次上网日期,不代表论文的发表时间)

相关文献
评论
相关作者
相关机构
打开万方数据APP,体验更流畅