A resource-aware scheduling algorithm with reduced task duplication on heterogeneous computing systems

To satisfy the high-performance requirements of application executions, many kinds of task scheduling algorithms have been proposed. Among them, duplication-based scheduling algorithms achieve higher performance compared to others. However, because of their greedy feature, they duplicate parents of each task as long as the finish time can be reduced, which leads to a superfluous consumption of resource. However, a large amount of duplications are unnecessary because slight delay of some uncritical tasks does not affect the overall makespan. Moreover, these redundant duplications would occupy the resources, delay the execution of subsequent tasks, and increase the schedule makespan consequently. In this paper, we propose a novel duplication-based algorithm designed to overcome the above drawbacks. The proposed algorithm is to schedule tasks with the least redundant duplications. An optimizing scheme is introduced to search and remove redundancy for a schedule generated by the proposed algorithm further. Randomly generated directed acyclic graphs and two real-world applications are tested in our experiments. Experimental results show that the proposed algorithm can save up to 15.59  % resource consumption compared with the other algorithms. The makespan has improvement as well.

[1]  Kuldip Singh,et al.  An Improved Duplication Strategy for Scheduling Precedence Constrained Graphs in Multiprocessor Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[2]  Foad Lotfifar,et al.  A Low-Complexity Task Scheduling Algorithm for Heterogeneous Computing Systems , 2009, 2009 Third Asia International Conference on Modelling & Simulation.

[3]  Jan Janecek,et al.  A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[4]  Michel Cosnard,et al.  Automatic task graph generation techniques , 1995, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.

[5]  Yves Robert,et al.  Parallel Gaussian elimination on an MIMD computer , 1988, Parallel Comput..

[6]  Cristina Boeres,et al.  A cluster-based strategy for scheduling task on heterogeneous processors , 2004 .

[7]  Kenli Li,et al.  Energy-Aware Scheduling Algorithm with Duplication on Heterogeneous Computing Systems , 2012, 2012 ACM/IEEE 13th International Conference on Grid Computing.

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

[9]  R. F. Freund,et al.  Guest Editor's Introduction: Heterogeneous Processing , 1993 .

[10]  Chao-Tung Yang,et al.  A dominant predecessor duplication scheduling algorithm for heterogeneous systems , 2007, The Journal of Supercomputing.

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

[12]  Kuldip Singh,et al.  Dealing with heterogeneity through limited duplication for scheduling precedence constrained task graphs , 2005, J. Parallel Distributed Comput..

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

[14]  Arjan J. C. van Gemund,et al.  Fast and effective task scheduling in heterogeneous systems , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

[15]  Ümit V. Çatalyürek,et al.  Compaction of Schedules and a Two-Stage Approach for Duplication-Based DAG Scheduling , 2009, IEEE Transactions on Parallel and Distributed Systems.

[16]  Howard Jay Siegel,et al.  Heterogeneous Distributed Computing , 1999 .

[17]  Jing-Chiou Liou,et al.  An Efficient Task Clustering Heuristic for Scheduling DAGs on Multiprocessors , 2007 .

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

[19]  Xin-She Yang,et al.  Introduction to Algorithms , 2021, Nature-Inspired Optimization Algorithms.

[20]  Oliver Sinnen,et al.  Task Scheduling for Parallel Systems , 2007, Wiley series on parallel and distributed computing.

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

[22]  Wang Jinxiang,et al.  An Objective-Flexible Clustering Algorithm for task mapping and scheduling on cluster-based NoC , 2010, 2010 Academic Symposium on Optoelectronics and Microelectronics Technology and 10th Chinese-Russian Symposium on Laser Physics and Laser TechnologyOptoelectronics Technology (ASOT).

[23]  Lee C. Potter,et al.  Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

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

[25]  Xiao Qin,et al.  EAD and PEBD: Two Energy-Aware Duplication Scheduling Algorithms for Parallel Tasks on Homogeneous Clusters , 2011, IEEE Transactions on Computers.

[26]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[27]  Cristina Boeres,et al.  A cluster-based strategy for scheduling task on heterogeneous processors , 2004, 16th Symposium on Computer Architecture and High Performance Computing.

[28]  Jeffrey D. Ullman,et al.  NP-Complete Scheduling Problems , 1975, J. Comput. Syst. Sci..

[29]  Oliver Sinnen,et al.  Task Scheduling for Parallel Systems (Wiley Series on Parallel and Distributed Computing) , 2007 .

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

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

[32]  Dharma P. Agrawal,et al.  A scalable task duplication based scheduling algorithm for heterogeneous systems , 2000, Proceedings 2000 International Conference on Parallel Processing.