A Novel Task-Duplication Based Clustering Algorithm for Heterogeneous Computing Environments

As a crucial task in heterogeneous distributed systems, DAG-scheduling models a scheduling application with a set of distributed tasks by a Direct Acyclic Graph (DAG). The goal is to assign tasks to different processors so that the whole application can finish as soon as possible. Task Duplication-Based (TDB) scheme is an important technique addressing this problem. The main idea is to duplicate tasks on multiple machines so that the results of the duplicated tasks are available on multiple machines to trade computation time for communication time. Existing TDB algorithms enumerate and test all possible duplication candidates, and only keep the candidates that can improve the overall scheduling. We observe that while a duplication candidate is ineffective at the moment, after other duplications have been applied, this ineffective duplication candidate can become effective, which in turn can cause other ineffective duplications to become effective. We call this phenomenon the chain reaction of task duplication. We propose a novel Task Duplication based Clustering Algorithm (TDCA) to improve the schedule performance by utilizing duplication task more thoroughly. TDCA improves parameter calculation, task duplication, and task merging. The analysis and experiments are based on randomly generated graphs with various characteristics, including DAG depth and width, communication-computing cost ration, and variant computation power of processors. Our results demonstrate that the TDCA algorithm is very competitive. It improves the schedule makespan of task duplication-based algorithms for heterogeneous systems for various communication-computing cost ratios.

[1]  C. Chakrabarti,et al.  Static task-scheduling algorithms for battery-powered DVS systems , 2005, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[2]  Dharma P. Agrawal,et al.  Optimal Scheduling Algorithm for Distributed-Memory Machines , 1998, IEEE Trans. Parallel Distributed Syst..

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

[4]  Sanjay Jain,et al.  Review of Task Duplication Based (TDB) Scheduling Algorithms , 2015, Smart Comput. Rev..

[5]  Rajkumar Buyya,et al.  Multiobjective differential evolution for scheduling workflow applications on global Grids , 2009 .

[6]  Behrooz Shirazi,et al.  DFRN: a new approach for duplication based scheduling for distributed memory multiprocessor systems , 1997, Proceedings 11th International Parallel Processing Symposium.

[7]  Xiaobo Sharon Hu,et al.  Local-Deadline Assignment for Distributed Real-Time Systems , 2015, IEEE Transactions on Computers.

[8]  Rizos Sakellariou,et al.  Scheduling multiple DAGs onto heterogeneous systems , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[9]  Prasanta K. Jana,et al.  Task duplication-based workflow scheduling for heterogeneous cloud environment , 2016, 2016 Ninth International Conference on Contemporary Computing (IC3).

[10]  Chao-Chin Wu,et al.  A dynamic critical path duplication task scheduling algorithm for distributed heterogeneous computing systems , 2006, 12th International Conference on Parallel and Distributed Systems - (ICPADS'06).

[11]  Sanjeev Baskiyar,et al.  Scheduling directed a-cyclic task graphs on a bounded set of heterogeneous processors using task duplication , 2005, J. Parallel Distributed Comput..

[12]  Carolyn McCreary,et al.  A comparison of heuristics for scheduling DAGs on multiprocessors , 1994, Proceedings of 8th International Parallel Processing Symposium.

[13]  Kenli Li,et al.  Scheduling Precedence Constrained Stochastic Tasks on Heterogeneous Cluster Systems , 2015, IEEE Transactions on Computers.

[14]  Fatma A. Omara,et al.  Genetic algorithms for task scheduling problem , 2010, J. Parallel Distributed Comput..

[15]  Dharma P. Agrawal,et al.  A task duplication based scheduling algorithm for heterogeneous systems , 2000, Proceedings 14th International Parallel and Distributed Processing Symposium. IPDPS 2000.

[16]  Dharma P. Agrawal,et al.  Improving scheduling of tasks in a heterogeneous environment , 2004, IEEE Transactions on Parallel and Distributed Systems.

[17]  Kaijun Ren,et al.  DAG Scheduling for Heterogeneous Systems Using Biogeography-Based Optimization , 2015, 2015 IEEE 21st International Conference on Parallel and Distributed Systems (ICPADS).

[18]  Rizos Sakellariou,et al.  A hybrid heuristic for DAG scheduling on heterogeneous systems , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[19]  Javed Ali Optimal Task Partitioning Model in Distributed Heterogeneous Parallel Computing Environment , 2012 .

[20]  Bharadwaj Veeravalli,et al.  Requirement-Aware Scheduling of Bag-of-Tasks Applications on Grids with Dynamic Resilience , 2013, IEEE Transactions on Computers.

[21]  Arjan J. C. van Gemund,et al.  Low-Cost Task Scheduling for Distributed-Memory Machines , 2002, IEEE Trans. Parallel Distributed Syst..

[22]  Jing-Chiou Liou,et al.  Task Clustering and Scheduling for Distributed Memory Parallel Architectures , 1996, IEEE Trans. Parallel Distributed Syst..

[23]  Yong Zhao,et al.  A New Task Duplication Based Multitask Scheduling Method , 2006, 2006 Fifth International Conference on Grid and Cooperative Computing (GCC'06).

[24]  Scott Shenker,et al.  Delay scheduling: a simple technique for achieving locality and fairness in cluster scheduling , 2010, EuroSys '10.

[25]  Nawwaf N. Kharma,et al.  A high performance algorithm for static task scheduling in heterogeneous distributed computing systems , 2008, J. Parallel Distributed Comput..

[26]  Kwangsik Shin,et al.  Task scheduling algorithm using minimized duplications in homogeneous systems , 2008, J. Parallel Distributed Comput..

[27]  Hamid Arabnejad,et al.  List Scheduling Algorithm for Heterogeneous Systems by an Optimistic Cost Table , 2014, IEEE Transactions on Parallel and Distributed Systems.

[28]  James C. Browne,et al.  General approach to mapping of parallel computations upon multiprocessor architectures , 1988 .

[29]  Y.-K. Kwok,et al.  Static scheduling algorithms for allocating directed task graphs to multiprocessors , 1999, CSUR.

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

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

[32]  Yi Yang,et al.  BLASX: A High Performance Level-3 BLAS Library for Heterogeneous Multi-GPU Computing , 2015, ICS.

[33]  George Bosilca,et al.  Hierarchical DAG Scheduling for Hybrid Distributed Systems , 2015, 2015 IEEE International Parallel and Distributed Processing Symposium.

[34]  Nitin Auluck,et al.  Restricted Duplication Based MILP Formulation for Scheduling Task Graphs on Unrelated Parallel Machines , 2012, 2012 Fifth International Symposium on Parallel Architectures, Algorithms and Programming.