节点文献

IA-64中软件流水失败的解决方法

Reducing software pipelining failure on IA-64

  • 推荐 CAJ下载
  • PDF下载
  • 不支持迅雷等下载工具,请取消加速工具后下载。

【作者】 林海波李文龙汤志忠

【Author】 LIN Haibo, LI Wenlong, TANG Zhizhong(Department of Computer Science and Technology, Tsinghua University, Beijing 100084, China)

【机构】 清华大学计算机科学与技术系清华大学计算机科学与技术系 北京100084北京100084北京100084

【摘要】 软件流水是开发指令级并行性的重要方法之一。IA-64是支持软件流水的EPIC(显式并行指令计算)体系结构。通过对NASBenchmarks和MediaBench中软件流水所需的寄存器进行分析,指出静态通用寄存器是导致软件流水失败的主要因素。提出了解决IA-64中软件流水失败的两种方法:限制循环展开因子的启发式算法(RSU)和堆栈寄存器分配算法(SRA)。RSU通过适当减小循环展开因子,增加了软件流水的成功率;SRA在静态寄存器和旋转寄存器之间达到了动态的平衡,提高了寄存器的利用率,更有效地提高了编译器的性能。

【Abstract】 Software pipelining is a l oo p scheduling technique that explores instruction level parallelism by overlappin g execution of several consecutive iterations. IA-64 is a new EPIC architecture that provides hardware support for software pipelining. Analysis of the registe r requirements for software pipelined loops showed that the static general regis ter played a key role in software pipelining failure. A heuristic algorithm call ed register sensitive unrolling was developed to increase the number of software pipelined loops by limiting unrolling factors. The stacked register allocation algorithm was developed to improve register usage efficiency by allocating stack ed general registers as static general registers, and the algorithm markedly boosts compiler perform ance.

【基金】 国家自然科学基金资助项目(60173010);国家"八六三"高技术计划资助项目(2001AA111060)
  • 【文献出处】 清华大学学报(自然科学版) ,Journal of Tsinghua University(Science and Technology) , 编辑部邮箱 ,2003年07期
  • 【分类号】TP311.5
  • 【被引频次】5
  • 【下载频次】66
节点文献中: 

本文链接的文献网络图示:

本文的引文网络