Feedback Guided Scheduling of Nested Loops

In earlier papers ([2], [3], [6]) feedback guided loop scheduling algorithms have been shown to be very effective for certain loop scheduling problems which involve a sequential outer loop and a parallel inner loop and for which the workload of the parallel loop changes only slowly from one execution to the next. In this paper the extension of these ideas the case of nested parallel loops is investigated. We describe four feedback guided algorithms for scheduling nested loops and evaluate the performances of the algorithms on a set of synthetic benchmarks.

[1]  Derek L. Eager,et al.  Affinity scheduling of unbalanced workloads , 1994, Proceedings of Supercomputing '94.

[2]  David F. Bacon,et al.  Compiler transformations for high-performance computing , 1994, CSUR.

[3]  L.M. Ni,et al.  Trapezoid Self-Scheduling: A Practical Scheduling Scheme for Parallel Compilers , 1993, IEEE Trans. Parallel Distributed Syst..

[4]  Steven Lucco,et al.  A dynamic scheduling method for irregular parallel programs , 1992, PLDI '92.

[5]  Edith Schonberg,et al.  Factoring: a practical and robust method for scheduling parallel loops , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[6]  Yong Yan,et al.  Adaptively Scheduling Parallel Loops in Distributed Shared-Memory Systems , 1997, IEEE Trans. Parallel Distributed Syst..

[7]  Arthur R. Butz,et al.  Alternative Algorithm for Hilbert's Space-Filling Curve , 1971, IEEE Transactions on Computers.

[8]  N. Bull,et al.  A FEEDBACK BASED LOAD BALANCE ALGORITHM FOR PHYSICSROUTINES IN , 1996 .

[9]  D. Snelling,et al.  Controlling Load Balance, Cache Use and Vector Length in the Um , 1994 .

[10]  Edith Schonberg,et al.  Factoring: a method for scheduling parallel loops , 1992 .

[11]  Evangelos P. Markatos,et al.  Using processor affinity in loop scheduling on shared-memory multiprocessors , 1992, Supercomputing '92.

[12]  J. Mark Bull,et al.  Feedback Guided Dynamic Loop Scheduling: Algorithms and Experiments , 1998, Euro-Par.

[13]  CONSTANTINE D. POLYCHRONOPOULOS,et al.  Guided Self-Scheduling: A Practical Scheduling Scheme for Parallel Supercomputers , 1987, IEEE Transactions on Computers.