Heterogeneous parallel and distributed computing systems frequently must operate in environments where there is uncertainty in system parameters. Robustness can be defined as the degree to which a system can function correctly in the presence of parameter values different from those assumed. In such an environment, the execution time of any given task may fluctuate substantially due to factors such as the content of data to be processed. Determining a resource allocation that is robust against this uncertainty is an important area of research. In this study, we define a stochastic robustness measure to facilitate resource allocation decisions in a dynamic environment where tasks are subject to individual hard deadlines and each task requires some input data to start execution. In this environment, the tasks that cannot meet their deadlines are dropped (i.e., discarded). We define methods to determine the stochastic completion times of tasks in the presence of the task dropping. The stochastic task completion time is used in the definition of the stochastic robustness measure. Based on this stochastic robustness measure, we design novel resource allocation techniques that work in immediate and batch modes, with the goal of maximizing the number of tasks that meet their individual deadlines. We compare the performance of our technique against several well-known approaches taken from the literature and adapted to our environment. Simulation results of this study demonstrate the suitability of our new technique in a dynamic heterogeneous computing system.
Bibliographical noteFunding Information:
The authors thank Mark Oxley and Ryan Friese for their useful comments on this work. This research was supported by the National Science Foundation (NSF) under grant numbers CNS-0905399 , CNS-0615170 , ECCS-0700559 , and CCF-1302693 , and by the Colorado State University George T. Abell Endowment . This research used the CSU ISTeC Cray System supported by NSF Grant CNS-0923386 .
- Dynamic resource allocation
- Heterogeneous computing
- Stochastic models