next up previous
Next: The Generalized Algorithm: Up: Using Parallel Program Characteristics Previous: 3.3 The System Model

4 The Adaptive Algorithms

 

In order to explore different methods of allocating processing power to jobs we employ a slightly modified version of the generalization of processor allocation policies proposed by Brecht [3]. In this generalization, tex2html_wrap_inline913 is the characteristic of job tex2html_wrap_inline815 being used to make the allocation decision, P is the number of processors in the system, N is the number of jobs currently executing, tex2html_wrap_inline779 is the control that determines the actual allocation policy, and tex2html_wrap_inline813 is the number of processors allocated to job tex2html_wrap_inline815 as a result of the policy. The generalization is defined as:

displaymath109

Different values of tex2html_wrap_inline779 represent various points on a spectrum of processor allocation strategies. The tex2html_wrap_inline779 chosen acts as both a means of selecting the degree of processor sharing and as a control on which jobs should be given larger portions of the processors. Different values of tex2html_wrap_inline913 can be used to make allocation decisions based on different job characteristics. For example, using tex2html_wrap_inline933 , we have policies that base allocation decisions on work. In this case larger positive values of tex2html_wrap_inline779 allocate a greater portion of processors to jobs with more work (larger jobs) while larger negative values of tex2html_wrap_inline779 allocate a greater portion of processors to jobs with less work (smaller jobs). Specific values of tex2html_wrap_inline779 worth noting (when using tex2html_wrap_inline933 ) are:

  1. tex2html_wrap_inline943 , which allocates processors in direct proportion to the work being executed by each application [3].
  2. tex2html_wrap_inline945 , which allocates processors in proportion to the square root of the work being executed by each application. This policy has been examined by Sevcik [32] and Brecht [3] in the context of static scheduling algorithms.
  3. tex2html_wrap_inline785 , which allocates processors equally among all jobs (i.e., independently of the work being executed by each job). This is the much studied equipartition policy [33, 19, 36, 5].

We consider dynamic scheduling policies that allocate or reallocate processors at job arrival and departures (if required). The scheduling algorithm limits the number of jobs active at any time, N, to be less than or equal to the number of processors, P.


next up previous
Next: The Generalized Algorithm: Up: Using Parallel Program Characteristics Previous: 3.3 The System Model

Tim Brecht
Thu Jul 24 14:20:29 EDT 1997