4.3 Cluster-Oriented Scheduling Technique (COST)
4.3.4 Experimental Set Up and Results
We have implemented theCOST algorithm and compared the same againstDOHSA[96], an existing scheduler for periodic tasks executing on a k-type (where k ≥ 1) heteroge- neous multi-core platform. Similar to COST, DOHSA is also a Deadline Partitioning based algorithm. Within every time-slice,DOHSAfirst determines the shares of tasks on different cores based on their utilization factors. Next, it tries to schedule each task fully on their preferred cores based on a heuristic. Finally, it schedules all the migrating tasks (which were not scheduled fully on a single core) on multiple cores such that no task executes concurrently on multiple cores. We discuss about our experimental framework in the following section.
4.3.4.1 Experimental Set Up
The evaluation of the proposed algorithm is based on extensive simulation based exper- iments. The size of the task sets have been varied from n = 10 to n = 40. Each task set consists of randomly generated hypothetical periodic tasks whose execution require- ments are generated from a Normal Distribution having standard deviation σe= 10 and meanµe = 50. Entries in the utilization matrix (U[n×m]) are also obtained from a Normal Distribution with standard deviation of σu = 0.2 and mean µu = 0.4. To evaluate the performance of COST, we introduce a parameter called Utilization Factor (UF), which is defined as the ratio between thesummation over the average utilizations of tasks and the number of available cores. That is, U F =
Pn
i=iavgmj=1(ui,j) m
Results are generated for various distinct utilization factors. It may be noted that the randomly generated utilization values may not lead to desired utilization factors.
In order to create a task set with a specified U F, the obtained utilization values have been appropriately scaled. Given the number of tasks n and the number of cores m in a heterogeneous platform and the required utilization factorU F, we needed to generate utilization factors for each task on all available cores. We applied a two step process to do so. In the first step, we randomly generated utilization factors for the tasks on a hypothetical core. If the ratio of summation of these utilization factors for the tasks
to the number of cores is higher or lower than the required utilization factor U F, we multiply each of these utilization factors by a fraction such that the ratio becomes equal to U F. Let the utilization for a task Ti on the hypothetical core is uhi. In the second step, we want to ensure that the average utilization of Ti over m cores is equal to uhi, i.e. uhi =avgmj=1(ui,j. In order to do so, we randomly generate utilization factors from a normal distribution having standard deviationσui = 0.1×uhi and mean µui =uhi forTi on m cores. If the average of these generated utilization values is higher or lower than uhi, we again multiply each of these randomly generated utilization factors for Ti such that avgmj=1(ui,j) becomes equal to uhi. We ran our simulation for a total execution time of 100000 time slots on systems having 2 to 8 processing cores. For each set of input parameters, we ran the simulation on 50 different test cases. For any given data set and algorithm being evaluated, the acceptance ratio, which is measured as the number of task sets accepted by the algorithm with respect to the total number of task sets submitted, has been determined.
4.3.4.2 Experimental Results
The proposed scheduler has been evaluated through extensive simulation based experi- ments. We have varied the the values for the following parameters in our experiments:
utilization factor (Experiment 1), number of processing cores (Experiment 2) and num- ber of tasks (Experiment 3). And then we have compared and analyzed our results with that of the algorithm DOHSA. Detailed analysis of the experimental results are discussed below.
Experiment 1 (Effect of Utilization Factor): In our experiments, we have varied the utilization factor between 0.5 and 1.0. The system under consideration has n = 20 tasks with 4 cores. We may observe from Figure 4.3a that acceptance ratio decreases for both the algorithms with increase in utilization factor of the system. Since the number of tasks remain constant against variations in utilization factor, the weights of individual tasks increase. So when workload on heterogeneous cores is increased, the probability of having migrating tasks within the time-slices also increases. For DOHSA, there is a
4.3 Cluster-Oriented Scheduling Technique (COST)
(a)Effect of varying U F (m = 4 and n = 20) (b) Effect of varying m(UF= 0.7 and n = 20)
(c) Effect of varyingn(UF= 0.7 and m = 4) Figure 4.3: COST: Experimental Results
restriction of allowing a task to migrate only once within a given time-slice. And for COST, the increase in utilization factor leads to higher probability of having tasks that require inter-cluster migration. As inter-cluster migration is not allowed, hence increase in the utilization factor leads to reduction in acceptance ratio. We may observe from Figure 4.3a that the acceptance ratio reduces from 100% to 18% and 100% to 25% for DOHSAandCOST respectively. Thus,COST fares comparatively better thanDOHSA.
Experiment 2(Effect of the number of cores): We evaluated both the algorithms on systems having 2 to 8 cores, 20 tasks and an utilization factor of 0.7. As we may observe from Figure 4.3b, the acceptance ratio of both DOHSA and COST decreases with increase in the number of cores, when the number of tasks remain constant. Al-
though, COST is an optimal scheduler for platforms with two types of heterogeneous cores (as it uses HETERO-FAIR [45] for scheduling within each cluster) but an increase in the number of cores results in increased number of clusters, which in turn leads to higher requirement of inter-cluster migration. Hence, the acceptance ratio decreases with the increase in number of cores for COST. For DOHSA, an increase in individual task weights due to increase in number of cores results in a higher probability of having migrating tasks in a time-slice. Also, since there is a restriction on number of migra- tions, so the acceptance ratios decrease. In particular, the acceptance ratio decreases from 100% to 30% and 100% to 32% for the algorithmsDOHSAandCOST, respectively.
Experiment 3 (Effect of the number of tasks): In our experiments, we have varied the number of tasks (n) between 10 and 40. The system under consideration has utilization factor of 0.7 with 4 cores. We may observe from Figure 4.3c that increase in the number of tasks also results in increased acceptance ratio for both the algorithms. As the utilization factor and number of cores remain constant, an increase in the number of tasks leads to reduced individual task weights. Hence, it results in increased acceptance ratio of the algorithms. However, as seen from the Figure 4.3c, COST delivers slightly better performance than DOHSAeven for this case.
4.4 HETERO-SCHED: A Low-overhead Heterogeneous Multi-core Scheduler