Title :
Split-path enhanced pipeline scheduling for loops with control flows
Author :
Shim, SangMin ; Moon, Soo-Mook
Author_Institution :
Sch. of Electr. Eng., Seoul Nat. Univ., South Korea
fDate :
30 Nov-2 Dec 1998
Abstract :
Software pipelining increases the loop execution throughput by overlapping the execution of successive iterations in a pipelined fashion. For loops with control flows, software pipelining is not straightforward because we need to consider the overlap of more than one execution path. Modulo scheduling simply transforms them into straight-line loops through if-conversion which, in effect, achieves a fixed, worst-case initiation interval (II) among all paths. All-path pipelining (APP) and enhanced pipeline scheduling (EPS) can achieve a variable II depending on the path that is followed through the loop at execution time. Unfortunately, APP concentrates only on the overlap within the same path, entirely losing the overlap between different paths, whereas EPS attempts to overlap all future paths together, failing to produce a tight schedule for each individual path. In this paper, we propose a new approach to EPS which splits each individual path in the loop via tail duplication, and performs EPS in a way to guarantee a tight schedule within the same path, while producing a comparable cross-path schedule. Our experimental results indicate that the proposed technique can achieve as much as a geometric mean of 7% performance improvement on non-trivial integer benchmarks
Keywords :
pipeline processing; processor scheduling; software performance evaluation; control flows; integer benchmarks; loop execution throughput; software pipelining; split-path enhanced pipeline scheduling; Frequency; Kernel; Merging; Moon; Pipeline processing; Power engineering and energy; Runtime; Tail; Throughput;
Conference_Titel :
Microarchitecture, 1998. MICRO-31. Proceedings. 31st Annual ACM/IEEE International Symposium on
Conference_Location :
Dallas, TX
Print_ISBN :
0-8186-8609-X
DOI :
10.1109/MICRO.1998.742772