论文部分内容阅读
在过去的十年中,微处理器的性能以每年大约50-60%的速度提升。然而,随着芯片制造工艺逐步接近硅原子的尺寸,微处理器学术界和工业界面临着诸多尚待解决的问题:比如处理器功耗快速增长导致散热量的快速增加,芯片内部线延迟加长导致信号在单个时钟周期内所能到达的功能部件数目减少等一系列问题,处理器性能提升的两架马车——时钟频率和IPC (Instructions Per Cycle)正在失去以往的前进动力。种种迹象表明传统的处理器体系结构已经不能适应新的制造工艺的发展,各研究团队相继开发了新的处理器体系结构来取代传统的处理器体系结构,比如分片式处理器体系结构等。于此同时,新的分片式处理器体系结构对编译技术也提出了新的要求,超块形成和优化技术与分片式处理器体系结构之间的无缝融合成了值得研究的领域。本文研究了分片式处理器体系结构的优点和潜力以及它和超块形成和优化技术之间的结合性,探讨了分片式处理器体系结构上指令之间的直接数据传送问题,提出了基于剖析信息和关键路径长度的软件扇出树生成算法与基于基本块特征的MOV指令精简启发式算法,给出了它们的理论分析,在TRIPS编译器和调度器上实现了算法并对其进行了实验性能测试。基于剖析信息和关键路径长度的软件扇出树生成算法利用了程序剖析信息和块的静态特征,改进了Huffman算法并创新性地把它运用到了软件扇出树生成领域,该算法可以优化软件扇出树的结构,优先给执行概率高和处于关键路径上的指令播送数据,因而可以提高程序块的ILP。基于基本块特征的MOV指令精简启发式算法利用程序基本块的特征信息,比如依赖链首尾宽度比、依赖链长度以及分支指令的跳转概率等信息来指导谓词化过程,该算法可以有效地减少块内MOV指令数,提高块内有效指令比例,降低由谓词化所带来的执行延迟。本文的研究表明分片式处理器体系结构和超块技术之间可以很好地融合,分片式处理器体系结构可以利用超块结构来暴露程序中的ILP给硬件执行基底,块内指令之间的直接数据通信也可以在分片式处理器体系结构上作为全局命名空间机制的补充得到应用。块内指令之间直接通信模式的代价可以通过基于基本块特征的MOV指令精简算法和基于剖析信息和关键路径长度的软件扇出树生成算法来有效降低。此外,本文的研究也说明了剖析信息可以在调度器中得到很好地应用。