Scheduling parallel tasks with sequential heads and tails

Citation
M. Drozdowski et W. Kubiak, Scheduling parallel tasks with sequential heads and tails, ANN OPER R, 90, 1999, pp. 221-246
Citations number
19
Categorie Soggetti
Engineering Mathematics
Journal title
ANNALS OF OPERATIONS RESEARCH
ISSN journal
02545330 → ACNP
Volume
90
Year of publication
1999
Pages
221 - 246
Database
ISI
SICI code
0254-5330(1999)90:<221:SPTWSH>2.0.ZU;2-O
Abstract
This paper considers scheduling of parallel tasks in a multiprogrammed, mul tiprocessor system. The problem of preemptive scheduling of n tasks on m pr ocessors to minimize makespan is studied. Task j starts and finishes with s equential parts head(j) and tail(j) , respectively. Between these two, j ru ns its parallel part parallel(j). The sequential parts have to be executed by one processor at a time. The parallel part can be executed by more than one processor at a time. It is shown that this problem is NP-hard in the st rong sense even if there are fewer tasks than processors. A linear program is presented to find an optimal schedule for a given sequence of completion times of heads and start times of tails. If the optimal schedule for tasks longer than the mth longest task is given, an efficient, polynomial-time m erging algorithm is proposed to obtain an optimal schedule for all n tasks. The algorithm builds an optimal schedule with at most m - 1 tasks running their parallel parts on more than one processor at a time, the remaining ta sks run their parallel parts as if they were sequential. Therefore, there a lways exist optimal schedules with only a few tasks exploiting the parallel processing capability of a parallel system. Finally, polynomially solvable cases are discussed, and the worst-case performance of three heuristics fo r the problem is analyzed.