软件流水中循环展开优化.PDFVIP

  • 24
  • 0
  • 约1.47万字
  • 约 5页
  • 2019-04-10 发布于湖北
  • 举报
2004年 11月 北 京 航 空 航 天 大 学 学 报 November摇 2004 摇 第30卷 第11期 Journal of Beijing University of Aeronautics and Astronautics Vol.30摇 No郾11 软软件流水中的循环展开优化 李文龙摇 摇 刘摇 利摇 摇 汤志忠 (清华大学 计算机科学与技术系,北京 100084) 摇 摇 摘摇 摇 摇 要:在软件流水中应用循环展开可以实现分数值的启动间距,提高资 源的利用率,同时基于展开的优化技术可以降低程序的资源需求和关键路径的长度. 提出了基于程序特性的展开因子算法UTBPC(Unrolling Times Based Program Charac鄄 teristics),解决了循环展开的核心问题———展开因子的确定,同时提出了基于展开的 软件数据预取优化技术,提高了软件数据预取的效率.所有这些都在ORC(Open Re鄄 search Compiler)中实现,并对SPEC 2000 中的程序进行了测试,平均性能提高了2. 6%.实验结果表明新提出的算法和基于展开的数据预取优化技术提高了编译器的整 体性能. 关摇 键摇 词:计算机软件;软件流水;循环展开;展开因子;数据预取 中图分类号:TP311 文献标识码:A摇 摇 摇 摇 文 章 编 号:1001鄄5965(2004)11鄄1111鄄05 Loop unrolling optimizationforsoftware pipelining Li Wenlong摇 Liu Li摇 Tang Zhizhong (Dept. of Computer Science and Technology,Tsinghua University,Beijing 100084,China) Abstract:Loop unrolling can make software pipelining achieve fractional initiation interval and improve resource utilization. Optimizationsbasedonunrollingcanreduceresourcerequirementsandtheheightsof crit鄄 ical paths. AnalgorithmnamedUTBPC(unrollingtimesbasedprogramcharacteristics)fordeterminingunroll鄄 ing factors and unrolling based optimization for software data prefetching were proposed. These optimizations were implemented in ORC(open research compiler),and SPEC CPU2000 benchmarkswere tested in Itanium processor. The average performancewasimproved by2.6%. The results show that UTBPC algorithm and un鄄 rolling based optimization for software data prefetching can improve the overall performance of compilers. Key words:software;software pipelining;loop unrolling;unrolling times;data prefetching [1] 摇 摇 软件流水 是一种重要的指令调度技术,它 度器能够更加自由地挑选不相关的指令进行调 通过并

文档评论(0)

1亿VIP精品文档

相关文档