Abstract

In multiprocessors a parallel program's execution time is directly influenced by the number of processors it is allocated. The problem of scheduling parallel programs in a multiprogrammed environment becomes one of determining how to best allocate processors to the different simultaneously executing programs in order to minimize mean response time. In this paper we address the problem of how many processors to allocate to each of the executing parallel jobs by examining the following questions: 1. (1) Is allocating processors equally among all jobs (equipartitioning) a desirable property of a scheduling algorithm? 2. (2) Does using information about the service demand of parallel jobs significantly reduce mean response time? 3. (3) Does using information about the efficiency with which parallel jobs execute significantly reduce mean response time? 4. (4) Does allocating each job a number of processors corresponding to the knee of the execution time — efficiency curve significantly reduce mean response time? 5. (5) What are the desirable properties of a scheduler that is designed to minimize mean response time? The main contributions of this paper are: a first-order understanding of how processing power should be dynamically allocated to jobs, a new family of algorithms for dynamic processor allocation and a rough quantification of the benefits that may be realized by properly utilizing job characteristics when making processor allocation decisions. We believe that these new algorithms can be combined with recently demonstrated techniques for obtaining sufficiently accurate runtime estimates of job efficiencies to improve scheduler implementations for multiprogrammed multiprocessors.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call