The Parallel Complexity of Scheduling with Precedence Constraints

We study the problem of parallel computation of a schedule for a system of n unit-length tasks on m identical machines, when the tasks are related by a set of precedence constraints. We present NC algorithms for computing an optimal schedule in the case where m, the number of available machines, does not vary with time and the precedence constraints are represented by a collection of outtrees. The algorithms run on an exclusive read, exclusive write (EREW) PRAM. Their complexities are O(log n) and O((log n)2) parallel time using O(n2) and O(n) processors, respectively. The schedule computed by our algorithms is a height-priority schedule. As a complementary result we show that it is very unlikely that computing such a schedule is in NC when any of the above conditions is significantly relaxed. We prove that the problem is P-complete under logspace reductions when the precedence constraints are a collection of intrees and outtrees, or for a collection of outtrees when the number of available machines is allowed to increase with time. The time span of a height-priority schedule for an arbitrary precedence constraints graph is at most 2 − 1(m − 1) times longer than the optimal (N. E Chen and C. L. Liu, Proc. 1974 Sagamore Computer Conference on Parallel Processing, T. Fend (Ed.), Springer-Verlag, Berlin, 1975, pp. 1–16). Whereas it is P-complete to produce the classical height-priority schedules even for very restricted precedence constraints graphs, we present a simple NC parallel algorithm which produces a different schedule that is only 2 − 1m times the optimal.

[1]  Danny Dolev,et al.  Scheduling Flat Graphs , 1985, SIAM J. Comput..

[2]  Marc Snir,et al.  Depth-Size Trade-Offs for Parallel Prefix Computation , 1986, J. Algorithms.

[3]  David S. Johnson,et al.  Scheduling Opposing Forests , 1983 .

[4]  Harold N. Gabow,et al.  An Almost-Linear Algorithm for Two-Processor Scheduling , 1982, JACM.

[5]  David S. Johnson,et al.  Scheduling Equal-Length Tasks Under Treelike Precedence Constraints to Minimize Maximum Lateness , 1977, Math. Oper. Res..

[6]  Ernst W. Mayr,et al.  Well structured parallel programs are not easier to schedule , 1981 .

[7]  T. C. Hu Parallel Sequencing and Assembly Line Problems , 1961 .

[8]  C. L. Liu,et al.  On a Class of Scheduling Algorithms for Multiprocessors Computing Systems , 1974, Sagamore Computer Conference.

[9]  Sartaj Sahni,et al.  Parallel Matrix and Graph Algorithms , 1981, SIAM J. Comput..

[10]  R. Ladner The circuit value problem is log space complete for P , 1975, SIGA.

[11]  Ernst W. Mayr,et al.  Two Processor Scheduling is in NC , 1986, Aegean Workshop on Computing.

[12]  Ronald L. Graham,et al.  Bounds on Multiprocessing Timing Anomalies , 1969, SIAM Journal of Applied Mathematics.

[13]  David P. Helmbold,et al.  Fast scheduling algorithms on parallel computers , 1984 .

[14]  Sartaj Sahni,et al.  A parallel matching algorithm for convex bipartite graphs and applications to scheduling , 1984, J. Parallel Distributed Comput..

[15]  Uzi Vishkin,et al.  On Efficient Parallel Strong Orientation , 1985, Inf. Process. Lett..

[16]  Robert E. Tarjan,et al.  An Efficient Parallel Biconnectivity Algorithm , 2011, SIAM J. Comput..

[17]  Manfred K. Warmuth,et al.  Profile Scheduling of Opposing Forests and Level Orders , 1985 .

[18]  H. T. Kung,et al.  A Regular Layout for Parallel Adders , 1982, IEEE Transactions on Computers.

[19]  John Bruno,et al.  Deterministic and Stochastic Scheduling Problems with Treelike Precedence Constraints , 1982 .

[20]  James Christopher Wyllie,et al.  The Complexity of Parallel Computations , 1979 .

[21]  Manfred K. Warmuth Scheduling on profiles of constant breadth , 1981 .

[22]  Hon Fung Li Scheduling Trees in Parallel/Pipelined Processing Environments , 1977, IEEE Transactions on Computers.