DocumentCode :
2113010
Title :
Software pipelining: a comparison and improvement
Author :
Jones, Reese B. ; Allan, Vicki H.
Author_Institution :
Dept. of Comput. Sci., Utah State Univ., Logan, UT, USA
fYear :
1990
fDate :
27-29 Nov 1990
Firstpage :
46
Lastpage :
56
Abstract :
Software pipelining can significantly increase the execution rate of loops. Each of the four major software pipelining algorithms takes a different approach to software pipelining. This paper discusses each method and explores some of the similarities and differences among the methods. On loops consisting of a single basic block, the perfect pipelining algorithm is the only software pipelining algorithm that currently achieves time optimality, in the absence of resource constraints. A technique for unrolling the loop before pipelining is presented as an improvement to software pipelining, as it can allow Lam´s algorithm to achieve time optimality for these restricted loops. Unrolling has an advantage over perfect pipelining because it can reduce the code space required for the software pipeline
Keywords :
microprogramming; pipeline processing; software engineering; perfect pipelining algorithm; software pipelining; time optimality; unrolling; Computer science; Delay; Parallel processing; Pipeline processing; Software algorithms; Steady-state;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Microprogramming and Microarchitecture. Micro 23. Proceedings of the 23rd Annual Workshop and Symposium., Workshop on
Conference_Location :
Orlando, FL
Print_ISBN :
0-8186-2124-9
Type :
conf
DOI :
10.1109/MICRO.1990.151426
Filename :
151426
Link To Document :
بازگشت