Preemptive Scheduling of Parallel Tasks

Consider a system of independent parallel tasks which are to be scheduled on a parallel computer. Preemptive execution of the tasks is allowed as long as there is no task magration between the processors, and all subtasks associated with a task are active at the same time. For each task the number of processors, the execution time and a weight are known. The problem is to find a schedule that minimizes the mean weighted flow time. Recently, a polynomial algorithm has been presented for this NP-hard problem which does not allow preemption and produces solutions within a fixed multiplicative constant (10.45) of the optimal non-preemptive schedule. It has also been shown that when all the tasks require only a single processor preemption does not reduce the cost of the optimal schedule. In this paper we show that when tasks run across multiple processors preemption can produce better solutions. We describe a new algorithm with a bound of approximately 2.42 and show that this bound is tight for the algorithm. An interesting feature of our method is that it requires that at most two tasks be resident at any time on a give processor.

By: Uwe Schwiegelshohn (Univ. of Dortmund, Germany), John Turek and Joel L. Wolf

Published in: RC20104 in 1995


This Research Report is available. This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g., payment of royalties). I have read and understand this notice and am a member of the scientific community outside or inside of IBM seeking a single copy only.

Questions about this service can be mailed to .