The composition of the workload can have a significant effect on the performance of a load distribution algorithm. This poses a problem for the evaluation of load distribution as even a real workload trace may obscure the true nature of an algorithm if the period is poorly chosen. This section describes the selection of suitable test periods from the workload trace.
Casavant and Kuhl summarised the underlying philosophy of load distribution as ``...being fair to the systems hardware resources is good for the users of that system''. With this in mind, a good test is to determine if all resources are being treated fairly, especially when the demand for a single resource is disproportionate or biased.
Periods of light workload generally offer little insight into the value of load distribution, as users will obtain satisfactory performance from almost any algorithm. A heavy workload is of more interest, with greater contention for resources and a corresponding increase in waiting time.
In summary, two workload attributes suitable for evaluating load distribution are:
The best test period will combine a high workload and a bias towards a particular resource, or subset of resources.
The length of the trace periods is fixed at one hour, giving
168
potential sample periods. This period is a natural
choice for several reasons:
A biased period can be detected using arbitrary thresholds based on the total demand for each resource within the hour. However, a threshold such as this is difficult to quantify, as it will vary with the workload composition in each hour. A better approach is to rank each hour by the total demand for each primary resource, and to assume that the greater the difference between the individual resource rankings of a period, the greater the degree of resource bias.
The primary resources simulated are CPU, memory and file IO, giving
the six possible bias combinations enumerated in table
Table 9.1: The rankings of the selected trace periods. A dash indicates
a ranking lower than 30
, which I have omitted for clarity.
These rankings indicate a lack of correspondence between the arrival
rate and resource consumption. Consider for example, trace 3, which
exhibits the sixth highest IO consumption, yet has an arrival rate
ranking of
placing it in the lower half of all
168 one hour periods. However, it is satisfying to note that the
period with the highest cumulative ranking of its resources, is also
the period with the highest arrival rate.