编译器存储优化关键技术研究

来源 :中国科学院计算技术研究所 | 被引量 : 0次 | 上传用户:thelkiss
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着处理器和存储器速度差距不断拉大,访存子系统日益成为发挥CPU性能的瓶颈.当发生cache miss时,尤其是最后一级cache miss,需要几十拍,甚至上百拍.处理器花费大量的时间在等待cache miss的访存指令完成.另一方面,编译器中不知道何处何时哪条访存指令发生了cache miss,保守的假定所有的访存指令都发生cache miss或者都命中.这样的保守假设很影响编译器优化效果.本论文工作针对此问题在编译器存储优化方面进行了深入研究,论文主要创新和贡献如下:1设计实现了基于编译器cache profiling技术.基于编译器的Cache profiling技术就是编译器通过插桩的库函数调用,模拟访存指令访问cache的行为,运行时收集访存指令cache miss或者命中的信息,用来指导编译器的优化.2提出了乱序执行机器上的load指令优化调度技术.我们利用cache profiling技术收集到的反馈信息,调整调度时依赖图中访存指令的延迟,使之更加准确.我们接着调整调度策略,改变频繁发生cache miss的访存指令和依赖于该访存指令的指令的优先级,达到增加指令级和存储级并行度的目的.经SPEC CPU2000Benchmark测试显示,我们的调度对于bzip2有高达4.8﹪的提升,art有4﹪的提升,整体平均提高1.5﹪.3提出了cache profiling信息指导的软件流水技术.与前人预测访存延迟的方法不同,我们引入cache profiling技术,通过动态收集到profile信息来预测访存延迟,并进行适当地调度.我们改进了CSMS算法和FLMS算法,在尽量不增大启动间隔的情况下,改变访存指令的延迟.实验表明,我们的方法可以有效的提高程序性能,对SPEC CPU2000测试程序,个别例子的性能改进高达11﹪.4提出了循环合并敏感的内联模型--循环合并敏感的优化内联模型,既考虑执行频率和函数大小,又考虑后面的优化.我们实现了考虑循环合并的内联,加入到ORC原有的内联模型巾,自适应的建立新的内联模型,并对此模型进行性能调优.实验的结果显示,我们的内联模型可以有效地提高编译器的性能,某些SPECCPU2000实例的peak性能有高达6﹪的性能提升.
其他文献
随着计算机的应用日益增多,各行业对软件系统的健壮性和稳定性提出了更高的要求,使得软件测试在整个软件项目中的地位日益重要。基于FSM模型的系统测试是一致性测试的重要研
本文的主要背景是中国科学院“十五”信息化建设重大项目—科学数据库及其应用系统。科学数据库经过二十多年的发展,积累了大量的科学数据资源,如何对这些分布、异构的数据资源
学位
深层卷积神经网络是人工神经网络在图像识别领域的一个研究热点,其目的是通过多层的网络结构进行复杂特征的提取并给出图像所属类别等属性。cuda-convnet深层卷积神经网络算法
随着网络技术地日益成熟,网络提供给用户的服务和应用越来越多。对服务供应商来说,如何深层次地分析用户的通信行为,进而提供更好的服务质量和计费活动显得尤为重要。   本课
学位
系统生物学思想是一种生命科学研究新的工作模式,它从多数据源整合出发,以网络分析为基础,通过统计学、信息学、人工智能等各种手段,对各种生命现象做出预测并指导传统生物实
在中国科学院多媒体通信协作平台的推广应用过程中,考虑到当前中国科技网网络结构相对复杂的情况和多媒体网络通信的实际需求,迫切需要一款能够支持标准会话协议,又兼顾配置的简
学位
包分类技术作为互联网中支持多业务服务能力的关键技术一直是研究人员关注的研究课题.网络处理器由于结合了通用处理器的低成本、灵活性以及专用集成电路(ASIC)的高效率的特
随着集成电路规模的不断扩大、集成度的不断提高,高速度高性能芯片的功耗成为日益突出的问题.保持系统性能的同时降低功耗已经成为集成电路设计面临的新挑战,特别是随着移动
统计学习理论是一种专门研究小样本情况下机器学习规律的新兴理论,它试图从更本质上来研究机器学习问题。SVM(Support Vector Machine,支持向量机)方法是在统计学习理论基础上
伴随着社会信息化进程加快,网络应用深入发展的同时,网络安全问题也日益突出.虽然在网络环境中部署了大量的防火墙、入侵检测系统、防病毒、身份认证等安全产品,在一定程度上