DocumentCode
2533630
Title
Unrolling-based optimizations for modulo scheduling
Author
Lavery, Daniel M. ; Hwu, Wen-Mei W.
Author_Institution
Center for Reliable & High Performance Comput., Illinois Univ., Urbana, IL, USA
fYear
1995
fDate
29 Nov-1 Dec 1995
Firstpage
327
Lastpage
337
Abstract
Modulo scheduling is a method for overlapping successive iterations of a loop in order to find sufficient instruction-level parallelism to fully utilize high-issue-rate processors. The achieved throughput module scheduled loop depends on the resource requirements, the dependence pattern, and the register requirements of the computation in the loop body. Traditionally, unrolling followed by acyclic scheduling of the unrolled body has been an alternative to module scheduling. However, there are benefits to unrolling even if the loop is to be module scheduled. Unrolling can improve the throughput by allowing a smaller non-integral effective initiation interval to be achieved. After unrolling, optimizations can be applied to the loop that reduce both the resource requirements and the height of the critical paths. Together, unrolling and unrolling-based optimizations can enable the completion of multiple iterations per cycle in some cases. This paper describes the benefits of unrolling and a set of optimizations for unrolled loops which have been implemented in the IMPACT compiler. The performance benefits of unrolling for five of the SPEC CFP92 programs are reported
Keywords
instruction sets; pipeline processing; program compilers; resource allocation; IMPACT compiler; SPEC CFP92 programs; acyclic scheduling; dependence pattern; high-issue-rate processors; instruction-level parallelism; modulo scheduling; register requirements; resource requirements; successive iterations overlapping; unrolling-based optimizations; Computer aided instruction; Delay; Hardware; Optimizing compilers; Parallel processing; Pipeline processing; Processor scheduling; Registers; Scheduling algorithm; Throughput;
fLanguage
English
Publisher
ieee
Conference_Titel
Microarchitecture, 1995., Proceedings of the 28th Annual International Symposium on
Conference_Location
Ann Arbor, MI
ISSN
1072-4451
Print_ISBN
0-8186-7349-4
Type
conf
DOI
10.1109/MICRO.1995.476842
Filename
476842
Link To Document