期刊文献+

软件流水的开销模型和决策框架 被引量:1

Cost Model and Decision Framework for Software Pipelining
在线阅读 下载PDF
导出
摘要 软件流水是一种重要的指令调度技术,它通过重叠地执行不同的循环体来提高指令级并行性(instructionlevelparallelism,简称ILP).模调度是一类被广泛采用的软件流水调度算法.软件流水并非一种无损的优化方法,它具有一定的开销,比如延长了编译时间、增加了寄存器压力等.而且,受到体系结构、调度算法以及程序特性的限制,进行软件流水并不一定能达到理想的加速比,有时反而会引起性能下降.提出了一种面向程序特性的软件流水开销模型,对此模型下的软件流水开销进行了量化分析,并提出了一种基于相关性分析的软件流水开销测试算法(dependencybasedcosttesting,简称DBCT),为软件流水决策提供了判断依据.实验结果表明,该算法收到了较好的效果. Software pipelining tries to improve the performance of a loop by overlapping the execution of several successive iterations. Modulo scheduling is a kind of widely used scheduling technique. The drawbacks of software pipelining, such as increased register pressure, would sometimes degrade the performance improvement that software pipelining gains. This kind of cost varies with the processor architecture, compiler optimization, and characteristics of programs. A program characteristics oriented cost model for software pipelining is proposed, and the cost is evaluated in some aspects. A dependency based cost testing (DBCT) algorithm is developed to provide information for the compiler to decide whether to apply software pipelining or not. Experimental results show that DBCT algorithm boosts performance greatly.
出处 《软件学报》 EI CSCD 北大核心 2004年第7期1005-1011,共7页 Journal of Software
基金 国家自然科学基金~~
关键词 软件流水 开销模型 相关性分析 Algorithms Codes (symbols) Computer software Mathematical models Scheduling Testing
  • 相关文献

参考文献8

  • 1[1]Allen VH, Jones RB, Lee RM, Allan SJ. Software pipelining. ACM Computing Surveys, 1995,27(3):367~432.
  • 2[2]Dehnert JC, Towle RA. Compiling for the Cydra 5. Journal of Supercomputing, 1993,7(1-2): 181~228.
  • 3[3]Huff RA. Lifetime-Sensitive modulo scheduling. In: Budd TA, ed. Proc. of the ACM SIGPLAN'93 Conf. on Programming Language Design and Implementation. New York: ACM Press, 1993. 258~267.
  • 4[4]Rau BR, Lee M, Tirumalai P, Schlansker MS. Register allocation for software pipelined loops. In: Allen R, ed. Proc. of the ACM SIGPLAN'92 Conf. on Programming Language Design and Implementation. New York: ACM Press, 1992.283~299.
  • 5[5]Dehnert JC, Hsu PY, Bratt JP. Overlapped loop support in the Cydra 5. In: Hennessy J, ed. Proc. of the 3rd Int'l Conf. on Architectural Support for Programming Languages and System. New York: ACM Press, 1989.26~38.
  • 6[6]Roy J, Sun C, Wu CY. Tutorial: Open research compiler for itanium processor family (IPF). In: Proc. of the 34th Annual Int'l Symp. on Microarchitecture. New York: ACM Press, 2001.
  • 7[7]Intel Corporation. Intel ItaniumTM Architecture Software Developer's Manual. Volume 1: Application Architecture. Intel Corporation, 2001.
  • 8[8]Intel Corporation. Intel ItaniumTM Architecture Software Developer's Manual. Volume 2: System Architecture. Intel Corporation,2001.

同被引文献47

引证文献1

二级引证文献7

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部