Abstract
Job scheduling plays a critical role in resource utilisation in a grid computing environment. The heterogeneity of grid resources adds some challenges to the work of job scheduling especially when jobs have dependencies which can be represented as Direct Acyclic Graphs (DAGs). Heuristics have been developed for job scheduling optimisation. This paper presents six heuristic enhancements—MMSTFT for minimising both makespan and task finish time, levelU for upward DAG levelling, TMWD for matching tasks with data, Slack for prioritising task scheduling based on slack time, LSlack for levelling the Slack heuristic, and NLPETS for non-levelling of performance effective task scheduling (PETS). The performance of LSlack is amongst the best heuristics evaluated (with BL and LMT). Additionally, heuristic enhancements MMSTS and TMWD can significantly improve the makespan of generated schedules. To facilitate performance evaluation, a DAG simulator is implemented which provides a set of tools for DAG job configuration, execution and monitoring. The components of the DAG simulator are also presented in this paper.
Similar content being viewed by others
References
Li M, Baker M (2005) The grid core technologies. Wiley, London
Ibarra OH, Kim CE (1977) Heuristic algorithms for scheduling independent tasks on nonidentical processors. J ACM 24(2):280–289
Braun TD, Siegel HJ, Beck N, Boloni LL, Maheswarans M, Reuthert AI, Robertson JP, Theys MD, Yao B, Hensgeno D, Freund RF (2001) A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing system. J Parallel Distrib Comput 61(6):810–837
Maheswaran M, Ali S, Siegel HJ, Hensgen D, Freund RF (1999) Dynamic mapping of a class of independent tasks onto heterogeneous computing systems. J Parallel Distrib Comput 59(2):107–131
Casanova H, Legrand A, Zagorodnov D, Berman F (2000) Heuristics for scheduling parameter sweep applications in grid environments (Hcw 2000). In: Proceedings of the 9th heterogeneous computing workshop, Cancun, Mexico, IEEE Computer Society, pp 349–363
Maheswaran M, Siegel HJ (1998) A dynamic matching and scheduling algorithm for heterogeneous computing systems. In: 7th heterogeneous computing workshop, Orlando, March 1998, pp 57–69
Iverson M, Ozguner F, Follen G (1995) Parallelizing existing applications in distributed heterogeneous environments. In: Proceedings of heterogeneous computing workshop
Alhusaini AH, Prasanna VK, Raghavendra CS (1999) A unified resource scheduling framework for heterogeneous computing environments. In: Proceedings of the eighth heterogeneous computing workshop, IEEE Computer Society, pp 156–165
Topcuoglu H, Hariri S, Wu MY (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274
Ilavarasan E, Thambidurai P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103
Kwok Y-K, Ahmad I (1998) Benchmarking the task graph scheduling algorithms. In: Proceedings of the 12th international parallel processing symposium on international parallel processing symposium, Orlando, Florida, pp 531–537
Yu J, Buyya R (2006) Scheduling scientific workflow applications with deadline and budget constraints using genetic algorithms. Sci Program J 14:217–230
Yu J, Buyya R (2005) A taxonomy of workflow management systems for grid computing. J Grid Comput 3(3–4):171–200
Kwok Y-K, Ahmad I (1999) Benchmarking and comparison of the task graph scheduling algorithms. J Parallel Distrib Comput 59(3):381–422
Wang L, Siegel HJ, Roychowdhury V, Maciejewski A (1997) Task matching and scheduling in heterogeneous computing environments using a genetic-algorithm-based approach. J Parallel Distrib Comput 47(1):8–22
Yu J, Buyya R (2007) Workflow scheduling algorithms for grid computing. Technical Report, GRIDS-TR-2007-10, Grid Computing and Distributed Systems Laboratory, The University of Melbourne, Australia
Spooner DP, Cao J, Jarvis SA, He L, Nudd GR (2005) Performance-aware workflow management for grid computing. Comput J 48(3):347–357
Hou ESH, Ansari N, Ren H (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans. Parallel Distrib. Syst 5(2):113–120
YarKhan A, Dongarra JJ (2002) Experiments with scheduling using simulated annealing in a grid environment. In: Proceedings of the third international workshop on grid computing (GRID 2002), Baltimore, November 2002, CS Press
Xhafa F, Abraham A (2008) Meta-heuristics for grid scheduling problems. In: Xhafa F, Abraham A (eds) Meta-heuristics for grid scheduling problems. Springer, Berlin
Feo TA, Resende MGC (1989) A probabilistic heuristic for a computationally difficult set covering problem. Oper Res Lett 8:67–71
Binato S, Hery WJ, Loewenstern DM, Resende MGC (2001) A grasp for job shop scheduling. In: Hansen P, Ribeiro CC (eds) Essays and Surveys on Metaheuristics. Kluwer, Amsterdam
Zhao H, Sakellariou R (2003) An experimental investigation into the rank function of the heterogeneous earliest finish time scheduling algorithm. In: Proceedings of Euro-Par 2003. Springer, Berlin
Zhang Y, Koelbel C, Kennedy K (2007) Relative performance of scheduling algorithms in grid environments. In: Seventh IEEE international symposium on cluster computing and the grid—CCGrid 2007, Rio de Janeiro, Brazil, 14–17 May 2007, IEEE Computer Society, pp 521–528
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Falzon, G., Li, M. Enhancing list scheduling heuristics for dependent job scheduling in grid computing environments. J Supercomput 59, 104–130 (2012). https://doi.org/10.1007/s11227-010-0422-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-010-0422-2