Non-clairvoyant Multiprocessor Scheduling of Jobswith Changing Execution
CharacteristicsJe Edmonds,Donald D. Chinn,Tim Brecht,Xiaotie Deng
1997-01-01
Abstract:A multiprocessor system is unlikely to have access to information about the execution characteristics of the jobs it is to schedule. In this work, we are interested in scheduling algorithms for batch jobs that require no such knowledge (such algorithms are called non-clairvoyant). Preemptive scheduling (i.e., redistribution of processors) is important to reduce mean response time in multiprocessor systems, especially in the widely available network of workstations. Preemption is a method to adapt to the uncertain and changing nature of jobs and workloads. Unfortunately, preemption incurs overheads that can adversely aaect application performance if applied frequently. To provide exibility in modeling these costs, we classify scheduling algorithms by the number of preemptions they are allowed, ranging from none to an innnite number. The Equi-partition algorithm ?], which partitions the processors evenly between the un-nished jobs, is an example of a simple scheduler that is non-clairvoyant and preempts only when jobs complete. Motwani et al. ?] show that the mean response time of jobs is within two of optimal for fully parallelizable jobs. Since parallel programs can have a wide variety of execution characteristics in practice, we consider a number of classiications of jobs according to how well they are able to utilize processors. Moreover a job may have both sequential and parallel phases in its computation. Hence, we allow jobs to have multiple phases, each of which may have diierent execution characteristics. For each of these preemptive models and for each of these job classiications, we provide asymptotically tight bounds on the mean response time of non-clairvoyant scheduling algorithms. For example, we consider a large class of jobs, characterized by multiple phases of arbitrary nondecreasing and sublinear speedup functions. For this class of jobs we show that in the worst case, the mean job response time obtained with Equi-partition is 2 + p 3 3:74 times that obtained with an optimal algorithm (which may preempt processors any number of times and may use knowledge of job characteristics to make its scheduling decisions). Also, for this class of jobs, we provide a tradeoo between performance and the number of preemptions allowed, where the number of preemptions is any bounded number.