Title :
Optimal software pipelining of nested loops
Author_Institution :
Dept. of Electr. & Comput. Eng., Louisiana State Univ. Baton Rouge, LA, USA
Abstract :
The article presents an approach to software pipelining of nested loops. While several articles have addressed software pipelining of single (non-nested) loops, little work has been done in the area of applying it to nested loops. The article solves the problem of finding the minimum iteration initiation interval (in the absence of resource constraints) for each level of a nested loop. The problem is formulated as one of finding a rational quasi-affine schedule for each statement in the body of a perfectly nested loop which is then solved using linear programming. This allows us to treat iteration-dependent statement reordering and multidimensional loop unrolling in the same framework. Unlike most work in scheduling nested loops, we treat each statement in the body as a unit of scheduling. Thus, the schedules derived allow for instances of statements from different iterations to be scheduled at the same time. Optimal schedules derived here subsume extant work on software pipelining of non-nested loops, in the absence of resource constraints
Keywords :
linear programming; parallel programming; pipeline processing; scheduling; iteration-dependent statement reordering; linear programming; minimum iteration initiation interval; multidimensional loop unrolling; nested loops; optimal schedule; optimal software pipelining; rational quasi-affine schedule; resource constraints; scheduling; software pipelining; Concurrent computing; Linear programming; Multidimensional systems; Optimal scheduling; Parallel processing; Pipeline processing; Processor scheduling; Reduced instruction set computing; VLIW; Vents;
Conference_Titel :
Parallel Processing Symposium, 1994. Proceedings., Eighth International
Conference_Location :
Cancun
Print_ISBN :
0-8186-5602-6
DOI :
10.1109/IPPS.1994.288280