Robust resource allocation of DAGs in a heterogeneous multicore system

In this study, we consider an environment composed of a heterogeneous cluster of multicore-based machines used to analyze satellite images. The workload involves large data sets, and is typically subject to deadline constraints. Multiple applications, each represented by a directed acyclic graph (DAG), are allocated to a dedicated heterogeneous distributed computing system. Each vertex in the DAG represents a task that needs to be executed and task execution times vary substantially across machines. The goal of this research is to assign applications to multicore-based parallel system in such a way that all applications complete before a common deadline, and their completion times are robust against uncertainties in execution times. We define a measure that quantifies robustness in this environment. We design, compare, and evaluate two resource allocation heuristics that attempt to maximize robustness.

[1]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[2]  Anthony A. Maciejewski,et al.  Task Matching and Scheduling in Heterogenous Computing Environments Using a Genetic-Algorithm-Based Approach , 1997, J. Parallel Distributed Comput..

[3]  Viktor K. Prasanna,et al.  Heterogeneous computing: challenges and opportunities , 1993, Computer.

[4]  Jan Janecek,et al.  A high performance, low complexity algorithm for compile-time job scheduling in homogeneous computing environments , 2003, 2003 International Conference on Parallel Processing Workshops, 2003. Proceedings..

[5]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..

[6]  Min Xie,et al.  Iterative list scheduling for heterogeneous computing , 2005, J. Parallel Distributed Comput..

[7]  Salim Hariri,et al.  Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing , 2002, IEEE Trans. Parallel Distributed Syst..

[8]  Howard Jay Siegel,et al.  Representing Task and Machine Heterogeneities for Heterogeneous Computing Systems , 2000 .

[9]  Anthony A. Maciejewski,et al.  Static allocation of resources to communicating subtasks in a heterogeneous ad hoc grid environment , 2006, J. Parallel Distributed Comput..

[10]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[11]  Amine Mahjoub,et al.  Scheduling with uncertainties on new computing platforms , 2011, Comput. Optim. Appl..

[12]  Arif Ghafoor,et al.  A distributed heterogeneous supercomputing management system , 1993, Computer.

[13]  Howard Jay Siegel,et al.  Robust resource allocation in a cluster based imaging system , 2009, Parallel Comput..

[14]  Edward A. Lee,et al.  A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures , 1993, IEEE Trans. Parallel Distributed Syst..

[15]  Ladislau Bölöni,et al.  Characterizing Resource Allocation Heuristics for Heterogeneous Computing Systems , 2005, Adv. Comput..

[16]  Kenli Li,et al.  List scheduling with duplication for heterogeneous computing systems , 2010, J. Parallel Distributed Comput..

[17]  Imtiaz Ahmad,et al.  An Integrated Technique for Task Matching and Scheduling onto Distributed Heterogeneous Computing Systems , 2002, J. Parallel Distributed Comput..

[18]  Klara Nahrstedt,et al.  QoS and Contention-Aware Multi-Resource Reservation , 2004, Cluster Computing.

[19]  Sadiq M. Sait,et al.  Task matching and scheduling in heterogeneous systems using simulated evolution , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[20]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[21]  Edward G. Coffman,et al.  Computer and job-shop scheduling theory , 1976 .

[22]  Emmanuel Jeannot,et al.  Evaluation and Optimization of the Robustness of DAG Schedules in Heterogeneous Environments , 2010, IEEE Transactions on Parallel and Distributed Systems.

[23]  David Fernández-Baca,et al.  Allocating Modules to Processors in a Distributed System , 1989, IEEE Trans. Software Eng..

[24]  Ishfaq Ahmad,et al.  Optimal task assignment in heterogeneous distributed computing systems , 1998, IEEE Concurr..

[25]  Sang Cheol Kim,et al.  Push-Pull: Deterministic Search-Based DAG Scheduling for Heterogeneous Cluster Systems , 2007, IEEE Transactions on Parallel and Distributed Systems.

[26]  Anthony A. Maciejewski,et al.  Stochastic robustness metric and its use for static resource allocations , 2008, J. Parallel Distributed Comput..

[27]  Anthony A. Maciejewski,et al.  A hybrid Branch-and-Bound and evolutionary approach for allocating strings of applications to heterogeneous distributed computing systems , 2008, J. Parallel Distributed Comput..