Linear and quadratic algorithms for scheduling chains and opposite chains

Abstract One basic scheduling problem of parallel systems is the scheduling of chains, the simplest form of precedence constraints between tasks. When tasks have unit-execution-times, the simple level algorithm minimizes the schedule length (or makespan). However, the time complexity is linear in the number of tasks and exponential in the size of the problem if a succinct coding is used. If some tasks are multiprocessor tasks, which require more than one processor at a time, the problem becomes more complicated and several NP-hardness results as well as polynomial algorithms (in the number of tasks) for practically important special cases (e.g. opposite chains) were obtained in the literature. Again, these solutions are exponential in the size of the problem if a succinct coding is used. In this paper we re-address the problem of scheduling chains and opposite chains. We consider both preemptive and nonpreemptive schedules. We first propose variants of largest remaining task (LRT) and highest level first (HLF) algorithms for chains of unit-width tasks. We then apply these new algorithms to the scheduling of unit-width chains and opposite chains. For the case of unit-width chains, we assume that tasks may have different ready (arrival) times. For both preemptive and nonpreemptive tasks, we obtain optimal scheduling algorithms of quadratic time complexity in the number of chains.

[1]  Jacek Blazewicz,et al.  Scheduling Multiprocessor Tasks to Minimize Schedule Length , 1986, IEEE Transactions on Computers.

[2]  Errol L. Lloyd,et al.  Concurrent Task Systems , 1981, Oper. Res..

[3]  I. Olkin,et al.  Inequalities: Theory of Majorization and Its Applications , 1980 .

[4]  Robert E. Benner,et al.  A radar simulation program for a 1024-processor hypercube , 1989, Proceedings of the 1989 ACM/IEEE Conference on Supercomputing (Supercomputing '89).

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

[6]  Jacek Blazewicz,et al.  Scheduling Independent 2-Processor Tasks to Minimize Schedule Length , 1984, Inf. Process. Lett..

[7]  Jacek Blazewicz,et al.  Scheduling Independent Multiprocessor Tasks on a Uniform k-Processor System , 1994, Parallel Comput..

[8]  Zhen Liu,et al.  Preemptive Scheduling with Variable Profile, Precedence Constraints and Due Dates , 1995, Discret. Appl. Math..

[9]  A. Kan Machine Scheduling Problems: Classification, Complexity and Computations , 1976 .

[10]  E. L. Lawler,et al.  Preemptive Scheduling of. Precedence-Constrained Jobs on Parallel Machines , 1981 .

[11]  Edward G. Coffman,et al.  Preemptive Scheduling of Real-Time Tasks on Multiprocessor Systems , 1970, JACM.

[12]  B. J. Lageweg,et al.  Multiprocessor scheduling with communication delays , 1990, Parallel Comput..

[13]  Zhen Liu,et al.  Scheduling multiprocessor tasks with chain constraints , 1996 .

[14]  Z Liu,et al.  Scheduling Theory and its Applications , 1997 .

[15]  Andrew S. Tanenbaum,et al.  Distributed operating systems , 2009, CSUR.

[16]  Maciej Drozdowski,et al.  Selected problems of scheduling tasks in multiprocessor computer systems , 1997 .

[17]  Joseph Y.-T. Leung,et al.  Complexity of Scheduling Parallel Task Systems , 1989, SIAM J. Discret. Math..

[18]  D. Teichroew,et al.  Optimal Short Term Financing Decision , 1965 .

[19]  E.L. Lawler,et al.  Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey , 1977 .

[20]  Robert McNaughton,et al.  Scheduling with Deadlines and Loss Functions , 1959 .