资源敏感的指令调度优化研究

来源 :中国科学院计算技术研究所 | 被引量 : 0次 | 上传用户:zhaofaqiang0124
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
指令调度依据机器资源特征和程序属性,通过调整指令的执行次序来提高指令级并行度,是一种重要的编译优化技术。一般地,指令调度考虑的机器资源主要是计算部件。本论文在指令调度中增加考虑了寄存器资源和访存相关的硬件资源的使用情况,提出了一组方法来减少寄存器溢出以及提高存储级并行,从而有效地提高程序的性能。本文的主要贡献如下:   1.提出了结合考虑溢出代价的寄存器压力模型。编译优化中考虑寄存器压力时,般以指令的或者活跃变量的数量来作评估,而不考虑不同变量的溢出代价对性能的影响。本文在考虑寄存器压力时,将变量溢出代价的影响视为重要因素,并提出了两种溢出代价的估算方法,以函数的平均频度估算该函数内变量溢出带来的溢出代价,或者通过具体分析预测将被溢出的变量并以它的溢出代价作为估算的溢出代价。将结合考虑溢出代价的寄存器压力模型,应用到编译优化中,能更好地控制寄存器压力过大时的溢出对程序性能的影响,改善程序性能。   2.考虑到不同变量的溢出代价及其对程序性能的影响差异很大,我们将上述考虑寄存器溢出代价的寄存器压力模型应用在全局指令调度中,提出了两种寄存器压力敏感的指令调度算法:   (1)频度信息指导的方法,以函数的平均频度估算函数内变量的溢出代价,并反映在给基本块设定的压力限值的大小上。在调度过程中,只有指令的调度不会导致指令沿途经过的基本块的寄存器需求超过寄存器压力限值时,才被允许。   (2)基于收益代价分析的方法,在寄存器压力的分析中根据压力情况预测溢出变量及溢出代价。在调度过程中,会具体地分析一次指令调度带来的性能收益和可能的溢出代价,只有收益不小于溢出代价的指令调度才被允许。   从实验结果来看,在全局指令调度上,基于收益代价分析的方法比编译器原有的策略提高2.60%,频度方法则提高2.12%,两者的平均性能都比前人的IPS方法提高了1%左右。   3.提出了一种MLP敏感的循环展开策略。面对长延迟的访存指令,利用传统的ILP优化发掘访存与计算之间的并行度是不足够的,应考虑提高存储级并行度。本文将循环体内访存操作的数据缓存缺失信息作为求取循环展开因子的重要因素来考虑,从而尽量发掘循环的存储级并行度。实验分别在显式并行的安腾2机器和乱序执行的龙芯2E机器上进行,在安腾2机器上的实验,Art和Galgel高达19%,平均性能提高了4.36%;在龙芯2E机器上平均性能提高了0.54%,并分析了在两种机器上性能的差异和原因。实验所获得的良好的性能提升也表明在循环展开中考虑Cache行为和存储级并行是很有意义的。
其他文献
随着无线通信技术的发展和多媒体新业务的出现,通信领域呈现出宽带移动化和移动宽带化的趋势,“宽带”和“移动”成为无线通信系统两个最重要的特点。在这样的背景下,IEEE提出了
随着我国卫星通信产业的迅猛发展,卫星通信产业链已逐步形成,但专用卫星终端测试系统严重缺乏。具备自主知识产权的GMR-13G(GEO-Mobile Radio interface-1the3rd Generation)卫
随着我国经济的发展,矿山建设正在如火如荼的展开,然而由于矿山建设管理模式不同和业务需求变化大,使得面向对象技术和基于组件的设计思想无法解决重用和可维护性问题,矿山建
矿井水文地质工作直接影响到煤矿的安全,尤其是矿井水害对煤矿生产影响极大。在矿井建设和生产过程中,大气降水、地表水和地下水都可能通过各种通道涌入矿井,造成矿井突水事
尽管计算机辅助设计软件(Computer Aided Design,简称CAD)目前被广泛地应用于建筑设计、机械制造等领域并极大地提高了工作效率,但在功能和交互方面还存在一定的改进余地。在功
随着移动设备、无线网络技术的不断发展、成熟和普及,移动应用所涉及的领域不断拓宽,在线地图服务也日益成为移动地图服务的发展趋势。然而,由于移动设备硬件和无线网络带宽等因
数据挖掘是通过仔细分析大量数据揭示有意义的关系、趋势和模式的过程,图挖掘是数据挖掘的一个分支,它的研究任务包括频繁子图挖掘和最大频繁子图挖掘。与频繁子图挖掘相比挖
近年来,随着计算机网络与无线通信的发展,以及对可携带、可移动计算机的需求不断增长,使得无线局域网以其移动灵活、易维护、易架设等优点被广泛应用。无线局域网是通过无线
Maze网络文件系统是基于北京大学天网FTP搜索引擎的一个混和型P2P网络文件共享系统,它运用了一些新颖的P2P网络技术,结合多种文件共享与传输技术,同时利用天网FTP搜索引擎的
深空探测业已成为世界关注的焦点,这类任务的高成本特性,也使得与探测成本密切相关的探测轨道的设计和优化方法的研究成为热点。深空探测的轨道(尤其在涉及借力飞行变轨时)通常