Abstract
Automatic parallelization of code written in a sequential language such as FORTRAN is of great importance. One natural approach to loop parallelization is to assign separate invocations of a loop to different processors. However, it is often necessary to delay the starting times of loops to avoid violating data dependences. In this paper we study a scheduling problem, called the Delay Problem, that models an aspect of the loop parallelization problem. We show that the Delay Problem is NP-Complete when the precedence constraints are a set of arbitrary trees. Our major result of the paper is a polynomial time algorithm for the case where the precedence constraints are a forest of in-trees or a forest of out-trees. This covers an important practical case for the Delay Problem.
This work supported by NSF Presidential Young Investigator Award CCR-8657562.
This work done while the author was at IBM Almaden Research Center.
Preview
Unable to display preview. Download preview PDF.
References
R. Allen and K. Kennedy. Automatic translation of fortran programs to vector form. ACM Transactions on Programming Languages and Systems, 491–542, October 1987.
J. R. Allen, Ken Kennedy, Carrie Porterfield, and Joe Warren. Conversion of control dependences to data dependences. In ACM Principles of Programming Languages, pages 177–189, 1983.
R. G. Cytron. Compile-time Scheduling and Optimization for Asynchronous Machines. PhD thesis, University of Illinois at Urbana-Champagne, 1984.
M. R. Garey and D. S. Johnson. Computers and Intractability, A Guide to the Theory of NP-Completeness. W. H. Freeman and Company, San Francisco, 1979.
D. J. Kuck, R. H. Kuhn, B. Leasure, and M. Wolfe. The structure of an advanced vectorizer for pipelined processors. In Proceedings of the IEEE 4th International COMPSAC, pages 207–218, IEEE, 1980.
E. W. Mayr. Well Structured Parallel Programs are Not Easier to Schedule. Technical Report, Department of Computer Science, Stanford University, September 1981.
A. A. Munshi. Compiling sequential codes for parallel machines. 1986. Unpublished manuscript.
B. Simons and A. A. Munshi. Scheduling Loops on Processors: Algorithms and Complexity. Technical Report RJ 5546 (56570), IBM, 1987.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1988 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Anderson, R.J., Munshi, A.A., Simons, B. (1988). A scheduling problem arising from loop parallelization on MIMD machines. In: Reif, J.H. (eds) VLSI Algorithms and Architectures. AWOC 1988. Lecture Notes in Computer Science, vol 319. Springer, New York, NY. https://doi.org/10.1007/BFb0040380
Download citation
DOI: https://doi.org/10.1007/BFb0040380
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-0-387-96818-6
Online ISBN: 978-0-387-34770-7
eBook Packages: Springer Book Archive