Task scheduling for heterogeneous computing systems

Efficient scheduling of tasks in heterogeneous computing systems is of primary importance for high-performance execution of programs. The programs are to be considered as multiple sequences of tasks that are presented as directed acyclic graphs (DAG). Each task has its own execution timeline that incorporates into multiple processors. Moreover, each edge on the graph represents constraints between the sequenced tasks. In this paper, we propose a new list–scheduling algorithm that schedules the tasks represented in the DAG to the processor that best minimizes the total execution time by taking into consideration the restriction of crossover between processors. This objective will be achieved in two major phases: (a) computing priorities of each task that will be executed, and (b) selecting the processor that will handle each task. The first phase, priorities computation, focuses on finding the best execution sequence that minimizes the makespan of the overall execution. In list-scheduling algorithm, the quality of the solution is very sensitive to the priority assigned to the tasks. Therefore, in this paper, we include an enhanced calculation of weight that is used in the ranking equation for determining the priority of tasks. The second phase, processor selection, primarily focuses on allocating a processor that is a best fit for each task to be executed. In this paper, we enhance the processor selection by introducing a randomized decision mechanism based on a threshold which decides whether the task be assigned to the processor with the lowest execution time or to the processor that produces the lowest finish time. This mechanism considers a balanced combination of the local and global optimal results to explore the search space efficiently to optimize the overall makespan. The proposed algorithm is evaluated on different randomly generated DAGs, and results are compared with the well-known existing approaches to show the effectiveness of the proposed algorithm in reducing the makespan of execution. The experiment’s results show improvement in the makespan that reaches up to 6–7%.

[1]  Jian Li,et al.  Cost-efficient task scheduling for executing large programs in the cloud , 2013, Parallel Comput..

[2]  Hamid R. Arabnia,et al.  Arbitrary Rotation of Raster Images with SIMD Machine Architectures , 1987, Comput. Graph. Forum.

[3]  Hamid Reza Boveiri,et al.  An Efficient Task Priority Measurement for List-Scheduling in Multiprocessor Environments , 2015 .

[4]  Jan Janecek,et al.  A simple scheduling heuristic for heterogeneous computing environments , 2003, Second International Symposium on Parallel and Distributed Computing, 2003. Proceedings..

[5]  Oliver Sinnen,et al.  Optimal Linear Programming Solutions for Multiprocessor Scheduling with Communication Delays , 2012, ICA3PP.

[6]  Henri Casanova,et al.  A Comparison of Scheduling Approaches for Mixed-Parallel Applications on Heterogeneous Platforms , 2007, Sixth International Symposium on Parallel and Distributed Computing (ISPDC'07).

[7]  Emmanuel Jeannot,et al.  Comparative Evaluation Of The Robustness Of DAG Scheduling Heuristics , 2008, CoreGRID Integration Workshop.

[8]  Krzysztof Kuchcinski,et al.  Constraints-driven scheduling and resource assignment , 2003, TODE.

[9]  Yves Robert,et al.  Memory-Aware List Scheduling for Hybrid Platforms , 2014, 2014 IEEE International Parallel & Distributed Processing Symposium Workshops.

[10]  S.M. Bhandarkar,et al.  The Hough Transform on a Reconfigurable Multi-Ring Network , 1995, J. Parallel Distributed Comput..

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

[12]  Yeh-Ching Chung,et al.  Improving Static Task Scheduling in Heterogeneous and Homogeneous Computing Systems , 2007, 2007 International Conference on Parallel Processing (ICPP 2007).

[13]  Hamid R. Arabnia,et al.  A Reconfigurable Architecture for Image Processing and Computer Vision , 1995, Int. J. Pattern Recognit. Artif. Intell..

[14]  Hamid R. Arabnia,et al.  A Parallel Algorithm for the Arbitrary Rotation of Digitized Images Using Process-and-Data-Decomposition Approach , 1990, J. Parallel Distributed Comput..

[15]  Kenli Li,et al.  Energy-Aware Data Allocation and Task Scheduling on Heterogeneous Multiprocessor Systems With Time Constraints , 2014, IEEE Transactions on Emerging Topics in Computing.

[16]  Suhaib A. Fahmy,et al.  Optimization of the HEFT Algorithm for a CPU-GPU Environment , 2013, 2013 International Conference on Parallel and Distributed Computing, Applications and Technologies.

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

[18]  Cong Liu,et al.  Task mapping in heterogeneous embedded systems for fast completion time , 2014, 2014 International Conference on Embedded Software (EMSOFT).

[19]  Rizos Sakellariou,et al.  DAG Scheduling Using a Lookahead Variant of the Heterogeneous Earliest Finish Time Algorithm , 2010, 2010 18th Euromicro Conference on Parallel, Distributed and Network-based Processing.

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

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

[22]  Maozhen Li,et al.  Enhancing list scheduling heuristics for dependent job scheduling in grid computing environments , 2010, The Journal of Supercomputing.

[23]  Bao Rong Chang,et al.  Scheduling Optimization for Vector Graphics Acceleration on Multiprocessor Systems , 2012, J. Inf. Hiding Multim. Signal Process..

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

[25]  Kuo-Chan Huang,et al.  Task ranking and allocation in list-based workflow scheduling on parallel computing platform , 2014, The Journal of Supercomputing.

[26]  Cédric Augonnet,et al.  StarPU: a unified platform for task scheduling on heterogeneous multicore architectures , 2011, Concurr. Comput. Pract. Exp..

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

[28]  G. Xiao,et al.  Erratum to “Characterization of Human Colorectal Cancer MDR1/P-gp Fab Antibody” , 2014, The Scientific World Journal.

[29]  Hamid R. Arabnia,et al.  Parallel stereocorrelation on a reconfigurable multi-ring network , 1996, The Journal of Supercomputing.

[30]  Hamid Arabnejad,et al.  List Based Task Scheduling Algorithms on Heterogeneous Systems-An overview , 2012 .

[31]  Hamid R. Arabnia,et al.  Parallel Edge-Region-Based Segmentation Algorithm Targeted at Reconfigurable MultiRing Network , 2003, The Journal of Supercomputing.

[32]  Hamid R. Arabnia,et al.  The REFINE Multiprocessor - Theoretical Properties and Algorithms , 1995, Parallel Comput..

[33]  H.R. Arabnia,et al.  A Transputer Network for Fast Operations on Digitised Images , 1989, Comput. Graph. Forum.

[34]  Yanyan Dai,et al.  A Synthesized Heuristic Task Scheduling Algorithm , 2014, TheScientificWorldJournal.