, Volume 99, Issue 11, pp 1125–1145 | Cite as

Lower-bound complexity algorithm for task scheduling on heterogeneous grid

  • Asmaa Atef
  • Tarek Hagras
  • Yousef B. Mahdy
  • Jan Janeček


The problem of best schedule of dependent-tasks application into nodes of computational grid in low complexity is the most important issue to obtain high performance application execution. Scheduling can be performed at compile-time or at run-time depends on tasks and grid-nodes available information. Due to the NP-completeness of the problem, heuristics are used in compile-time solution of the problem. Two of these heuristics are list-scheduling and duplication-based. List-scheduling heuristics produce reasonable schedule in reasonable time complexity, while duplication-based heuristics produce better schedule in higher time complexity. Many algorithms based on list-scheduling and duplication-based heuristics have been addressed in the literature. This paper proposes a scheduling algorithm based on list-scheduling and duplication-based heuristics. The algorithm is called Best-Node based Critical-Parent. The algorithm keeps the lower-bound complexity of any classes of heuristics-based scheduling algorithms. Random generated applications, in addition to real-world applications have been examined. The experimental results based on computer simulation show that the proposed algorithm performed better than the most-recent and well-known existing algorithms.


Task scheduling Grid computing Heterogeneous grids 

Mathematics Subject Classification



  1. 1.
    Baker M, Buyya R, Laforenza D (2002) Grids and grid technologies for wide-area distributed computing. Softw Pract Exp 32(15):1437–1466CrossRefMATHGoogle Scholar
  2. 2.
    Dong F, Akl SG (2006) Scheduling algorithms for grid computing: state of the art and open problems. Technical reportGoogle Scholar
  3. 3.
    Pinedo ML (2012) Scheduling: theory, algorithms, and systems. Springer Science & Business Media, BerlinCrossRefMATHGoogle Scholar
  4. 4.
    Coffman EG, Bruno JL (1976) Computer and job-shop scheduling theory. Wiley, HobokenMATHGoogle Scholar
  5. 5.
    Sinnen O (2007) Task scheduling for parallel systems, vol 60. Wiley, HobokenCrossRefGoogle Scholar
  6. 6.
    Ahmad I, Kwok Y-K, Wu M-Y (1996) Analysis, evaluation, and comparison of algorithms for scheduling task graphs on parallel processors. In: Second international symposium on parallel architectures, algorithms, and networks, Proceedings. IEEE, pp 207–213Google Scholar
  7. 7.
    Canon L-C, Jeannot E, Sakellariou R, Zheng W (2008) Comparative evaluation of the robustness of dag scheduling heuristics. In: Grid computing. Springer, Berlin, pp 73–84Google Scholar
  8. 8.
    Braun TD, Siegal H, Beck N, Bölöni LL, Maheswaran M, Reuther A, Robertson JP, Theys MD, Yao B, Hensgen D et al (1999) A comparison study of static mapping heuristics for a class of meta-tasks on heterogeneous computing systems. In: Eighth Heterogeneous Computing Workshop, (HCW’99) Proceedings. IEEE, pp 15–29Google Scholar
  9. 9.
    Ullman JD (1975) Np-complete scheduling problems. J Comput Syst Sci 10(3):384–393MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Garey MR, Johnson DS (1979) Computers and intractability: a guide to the theory of np-completeness. Freeman, San FranciscoMATHGoogle Scholar
  11. 11.
    Hagras T, Janeček J (2005) A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems. Parallel Comput 31(7):653–670CrossRefMATHGoogle Scholar
  12. 12.
    Hagras T, Janeček J (2003) Static vs. dynamic list-scheduling performance comparison. Acta Polytech 43(6):16–21Google Scholar
  13. 13.
    Topcuoglu H, Hariri S, Wu M-Y (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274CrossRefGoogle Scholar
  14. 14.
    Bittencourt LF, Sakellariou R, Madeira ER (2010) Dag scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm. In 2010 18th Euromicro international conference on parallel, distributed and network-based processing (PDP). IEEE, pp 27–34Google Scholar
  15. 15.
    Arabnejad H, Barbosa JG (2014) List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Trans Parallel Distrib Syst 25(3):682–694CrossRefGoogle Scholar
  16. 16.
    Ilavarasan E, Thambidurai P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103CrossRefGoogle Scholar
  17. 17.
    Cao H, Jin H, Wu X, Wu S, Shi X (2010) Dagmap: efficient and dependable scheduling of dag workflow job in grid. J Supercomput 51(2):201–223CrossRefGoogle Scholar
  18. 18.
    Mu P, Nezan J-F, Raulet M (2011) A list scheduling heuristic with new node priorities and critical child technique for task scheduling with communication contention. In: Algorithm-architecture matching for signal and image processing. Springer, Berlin, pp 217–236Google Scholar
  19. 19.
    Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. J Parallel Distrib Comput 70(4):323–329CrossRefMATHGoogle Scholar
  20. 20.
    Ahmad I, Kwok Y-K (1998) On exploiting task duplication in parallel program scheduling. IEEE Trans Parallel Distrib Syst 9(9):872–892CrossRefGoogle Scholar
  21. 21.
    Ahmad I, Kwok Y-K (1994) A new approach to scheduling parallel programs using task duplication. In: International conference on parallel processing, 1994. ICPP 1994, vol 2. IEEE, pp 47–51Google Scholar
  22. 22.
    Sinnen O, To A, Kaur M (2011) Contention-aware scheduling with task duplication. J Parallel Distrib Comput 71(1):77–86CrossRefGoogle Scholar
  23. 23.
    Bozdağ D, Catalyurek U, Özgüner F (2006) A task duplication based bottom-up scheduling algorithm for heterogeneous environments. In: 20th international parallel and distributed processing symposium, 2006. IPDPS 2006. IEEE, 12 ppGoogle Scholar
  24. 24.
    Lee YC, Zomaya AY (2005) A productive duplication-based scheduling algorithm for heterogeneous computing systems. In: High performance computing and communications. Springer, Berlin, pp 203–212Google Scholar
  25. 25.
    Sih GC, Lee EA (1993) A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans Parallel Distrib Syst 4(2):175–187CrossRefGoogle Scholar
  26. 26.
    Kwok Y-KKY-K, Ahmad I (1994) A static scheduling algorithm using dynamic critical path for assigning parallel algorithms onto multiprocessors. In: International conference on parallel processing, 1994. ICPP 1994, vol 2. IEEE, pp 155–159Google Scholar
  27. 27.
    Olteanu A, Marin A (2011) Generation and evaluation of scheduling dags: how to provide similar evaluation conditions. Comput Sci Master Res 1(1):57–66Google Scholar
  28. 28.
  29. 29.
    Berriman G, Good J, Laity A, Bergou A, Jacob J, Katz D, Deelman E, Kesselman C, Singh G, Su M-H et al (2004) Montage: a grid enabled image mosaic service for the national virtual observatory. In: Astronomical Data Analysis Software and Systems (ADASS) XIII, vol 314, p 593Google Scholar

Copyright information

© Springer-Verlag Wien 2017

Authors and Affiliations

  1. 1.Faculty of Computers and InformationAsyut UniversityAsyutEgypt
  2. 2.Faculty of Energy EngineeringAswan UniversityAswanEgypt
  3. 3.Faculty of Information TechnologyCzech Technical University in PraguePragueCzech Republic

Personalised recommendations