We begin by considering jobs that execute with perfect efficiency. This is an admittedly unrealistic assumption, but one that is useful in understanding and quantifying the importance of the service demand characteristic of a job (i.e., its work). This is done by comparing a spectrum of allocation algorithms that adaptively reallocate processing power to jobs according to their remaining work, . The basis for comparison is equipartition (i.e., ). Since jobs execute with perfect efficiency we use in order to determine processor allocations and examine a range of values.
The results shown in Figure 2 have been obtained by simulating a system with P = 100 processors, using a mean work requirement of , and the coefficient of variation of work being . The graph plots the mean response time as a function of the scheduling policy ( value) and shows results for loads (mean processor utilizations) of 30%, 50%, 70%, and 90%.
Figure 2: Mean response time vs. scheduling algorithm ( ); , perfectly efficient jobs
We first note, as expected, that the mean response times, , obtained with positive values of are very large when compared with values of less than or equal to zero. This is because positive values of will assign a larger portion of processors to larger jobs (i.e., jobs with larger ). The larger the value, the larger the portion of processors assigned to the largest job. With large enough , jobs are essentially executed in a Most Remaining Work First (MRWF) fashion. We include positive values in this experiment mainly to point out that MRWF is not pessimal. We see that in this experiment, with a load of 90%, is maximized (there is a peak in the curve) when . This is because the mean response time of a MRWF first policy can be increased by introducing processor sharing among the largest jobs, thus increasing the mean response time.
We also note that the difference in mean response time across different scheduling policies ( values) decreases as the load decreases. This is because as the load gets lighter the degree of multiprogramming decreases. Under extremely low loads there will only be one job in the system at any point in time, in which case all of the allocation policies behave in the same fashion (i.e., the job is allocated all P processors).
In Figure 3 we more closely examine the range . This graph has been produced by running experiments using a load of 90% and increasing the coefficient of variation of work. We consider . In each case, as increases in the negative direction the mean response time decreases. This is not surprising since (as mentioned previously) all jobs execute with perfect efficiency and a Least Remaining Work First (LRWF) policy is optimal under these conditions [32, 3]. As well, as the coefficient of variation increases so does the difference between and , demonstrating the increased benefits of knowing and appropriately using the job characteristic . We also point out that the shape of the curves becomes sharper with increases in . This is because with a small variation in , higher values of are required in order to approximate a LRWF policy, while with larger variations in smaller values of can be used to approximate LRWF.
Figure 3: Mean response time vs. scheduling algorithm ( ); load=90%, perfectly efficient jobs
In Table 1 we provide a rough quantification of the performance gains that can be achieved by knowing and utilizing when jobs are perfectly efficient and the load is 90%. This table contains one column for the mean response times and 90% confidence intervals for the two policies and , as well as one column showing the percentage improvement that is obtained by using instead of . It shows that for an improvement of roughly 64% can be expected and that the improvements likely increase with (note the larger confidence intervals for larger ).
This rough quantification is of interest because it provides an approximate bound on the reduction in mean response time that can be obtained by using (or ). This is because workloads with less efficient jobs will receive less benefit from allocating all processors to one job at a time (assuming a non-decreasing execution rate function), thus reducing the difference between an equipartition and an optimal policy. As well, previous analytic comparisons between LRWF and equipartition policies [3] show that the reduction in mean response time obtained when all jobs arrive simultaneously can be as large as 50% and that the difference can grow with the number of jobs (i.e., it is not competitive) when new arrivals are considered. Since this previous result assumes that arrival times and job sizes are designed to demonstrate maximum differences between the two policies, our comparison is important because it provides more reasonable bounds on the performance improvements that might be expected.
Table 1: Comparing mean response times for and for different ; load = 90%
These same experiments have also been conducted under the assumption that the work, , is not known a priori (see [12] for details). By keeping track of each job's accumulated execution time and using that as an estimate of a job's remaining work, influenced by studies performed by Leland and Ott on uniprocessor systems [17] (a portion of this study was recently confirmed for modern workloads by Harchol-Balter and Downey [14]), the response time is significantly reduced when compared with equipartition, although the reductions are not as large as when is known.
We now explore the consequences of using only information about a job's remaining work, , if jobs do not execute with perfect efficiency. In this experiment we again choose with a mean of and . Now instead of having all jobs execute with perfect efficiency, each job executes work at the rate defined by the execution rate function and the parameter ( ). In the following experiments we generate values uniformly between and and consider different workloads with different and values.
The graph on the left side of Figure 4 shows that for workloads with relatively low average efficiency ( ), using only to make scheduling decisions leads to increased mean response times (versus equipartitioning processors, ). This is because these policies ( ) are allocating larger portions of the processors to small jobs even though they may not be capable of utilizing them effectively, and are therefore essentially wasting processing power. However, the graph on the right side of Figure 4 shows that for workloads with high average efficiency ( ), using only to make scheduling decisions can decrease mean response times (versus using no job characteristics and equipartitioning processors, ). This is because, under this workload, the average efficiency of jobs is high enough that the benefits of allocating large portions of the processors to these jobs (reduced response time) outweigh the costs (under-utilized processors).
Figure 4: Mean response time vs. scheduling algorithm ( ); load=90%, jobs are not perfectly efficient