Skip to main content
Log in

Task scheduling for heterogeneous systems using an incremental approach

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Effective scheduling of the tasks of a distributed application is one of the key factors in achieving improved performance. It results in an adequate utilization of the underlying resources and also reduces the total execution time of the application. Generating an optimal schedule for a distributed application is not a trivial task as it exists in the class of NP-complete problems. In this paper, a novel strategy called incremental subgraph earliest finish time (INCSEFT) is proposed. It is aimed at scheduling tasks on heterogeneous systems. It incorporates the use of a subgraph that grows incrementally by adding critical paths. At each step, the scheduling strategy attempts to minimize the schedule length. Considering a large set of nodes at an instance makes this approach perform better than other scheduling strategies used for heterogeneous systems. The experiments performed with several graphs show that the INCSEFT strategy produces significant improvement over the well-known HEFT, LOOKAHEAD and CEFT strategies used for scheduling heterogeneous systems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17

Similar content being viewed by others

Notes

  1. The cost of communication between similar cores or processors is considered negligible.

  2. The processor \(P_1\) is available in the slot just after execution of the task C.

  3. The slowest and the fastest processor both will result in similar comparative performance of the algorithms.

References

  1. Abdel-Wahab HM, Kameda T (1978) Scheduling to minimize maximum cumulative cost subject to series-parallel precedence constraints. Oper Res 26(26):141–158

    Article  MathSciNet  MATH  Google Scholar 

  2. Ahmad I, Kwok YK (1998) On exploiting task duplication in parallel program scheduling. IEEE Trans Parallel Distrib Syst 9(9):872–892

    Article  Google Scholar 

  3. Al-Mouhamed MA (1990) Lower bound on the number of processors and time for scheduling precedence graphs with communication costs. IEEE Trans Softw Eng 16:1390–1401

    Article  MathSciNet  Google Scholar 

  4. Almeida VAF, Vasconcelos IMM, Árabe JNC, Menascé DA (1992) Using random task graphs to investigate the potential benefits of heterogeneity in parallel systems. In: Supercomputing ’92: Proceedings of the 1992 ACM/IEEE Conference on Supercomputing. IEEE Computer Society Press, Los Alamitos, pp 683–691

  5. Arabnia HR (1990) A parallel algorithm for the arbitrary rotation of digitized images using process-and-data-decomposition approach. J Parallel Distrib Comput 10(2):188–192

    Article  Google Scholar 

  6. Bittencourt LF, Sakellariou R, Madeira ERM (2010) Dag scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm. In: Parallel, Distributed and Network-Based Processing (PDP), 2010 18th Euromicro International Conference on, pp 27–34. doi:10.1109/PDP.2010.56

  7. Bozdağ D, Özgüner F, Catalyurek UV (2009) Compaction of schedules and a two-stage approach for duplication-based dag scheduling. IEEE Trans Parallel Distrib Syst 20:857–871

    Article  Google Scholar 

  8. Chen HB, Shirazi B, Kavi K, Hurson AR (1993) Static scheduling using linear clustering with task duplication. In: Proceedings of the ISCA International Conference on Parallel and Distributed Computing and Systems, pp 285–290

  9. Chretienne P (1992) Task scheduling with interprocessor communication delays. Eur J Oper Res 57(3):348–354

    Article  MathSciNet  MATH  Google Scholar 

  10. Cirou B, Jeannot E (2001) Triplet: a clustering scheduling algorithm for heterogeneous systems. In: IEEE symposium on reliable distributed systems. IEEE, pp 231–236

  11. Correa R, Ferreira A, Rebreyend P (1996) Integrating list heuristics into genetic algorithms for multiprocessor scheduling. In: Parallel and distributed processing, 1996. Eighth IEEE symposium on, pp 462–469

  12. Dai Y, Zhang X (2014) A synthesized heuristic task scheduling algorithm. SciWorldJ 2014(1):1–9

    Google Scholar 

  13. Darbha S, Agrawal DP (1994) SDBS: a task duplication based optimal scheduling algorithm. In: Proceedings of Scalable High-Performance Computing Conference. Knoxville, TN, pp 756–763

  14. Darbha S, Agrawal DP (1998) Optimal scheduling algorithm for distributed-memory machines. IEEE Trans Parallel Distrib Syst 9:87–95

    Article  Google Scholar 

  15. Deelman E, Vahi K, Juve G, Rynge M, Callaghan S, Maechling PJ, Mayani R, Chen W, Ferreira da Silva R, Livny M, Wenger K (2015) Pegasus: a workflow management system for science automation. Futur Gener Comput Syst 46:17–35. http://pegasus.isi.edu/publications/2014/2014-fgcs-deelman.pdf

  16. Dogan A, Özgüner F (2002) Ldbs: A duplication based scheduling algorithm for heterogeneous computing systems. In: Proceedings of the 2002 International Conference on Parallel Processing, ICPP ’02. IEEE Computer Society, Washington, DC, pp 352–359

  17. Gerasoulis A, Yang T (1992) A comparison of clustering heuristics for scheduling directed acyclic graphs on multiprocessors. J Parallel Distrib Comput 16(4):276–291

    Article  MathSciNet  MATH  Google Scholar 

  18. Singh H, Youssef A (1996) Mapping and scheduling heterogeneous task graphs using genetic algorithms. In: 5th IEEE heterogeneous computing workshop (HCW 96). IEEE, Honolulu, pp 86–97

  19. Hou ESH, Ansari N, Ren H (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 5(2):113–120

    Article  Google Scholar 

  20. Jiang YS, Chen WM (2015) Task scheduling for grid computing systems using a genetic algorithm. J Supercomput 71(4):1357–1377

    Article  Google Scholar 

  21. Khan MA (2012) Scheduling for heterogeneous systems using constrained critical paths. Parallel Comput 38(4–5):175–193

    Article  Google Scholar 

  22. Kim SJ, Brown JC (1988) A general approach to mapping of parallel computations upon multiprocessor architectures. In: In Proceedings of the International Conference on Parallel Processing, pp 1–8

  23. Kruatrachue B, Lewis T (1988) Grain size determination for parallel processing. IEEE Softw 5:23–32

    Article  Google Scholar 

  24. Kwok YK, Ahmad, I (1994) Exploiting duplication to minimize the execution times of parallel programs on message-passing systems. In: Parallel and Distributed Processing, 1994. Proceedings. Sixth IEEE Symposium on, pp 426 –433

  25. Liou J, Palis MA (1996) An efficient task clustering heuristic for scheduling dags on multiprocessors. In: Multiprocessors, Workshop on Resource Management, Symposium of Parallel and Distributed Processing, pp 152–156

  26. Maheswaran M, Siegel HJ (1998) A dynamic matching and scheduling algorithm for heterogeneous computing systems. In: Proceedings of the Seventh Heterogeneous Computing Workshop, HCW ’98. IEEE Computer Society, Washington, pp 57

  27. Papadimitriou C, Yannakakis M (1988) Towards an architecture-independent analysis of parallel algorithms. In: STOC ’88: Proceedings of the twentieth annual ACM symposium on theory of computing. ACM, New York, pp 510–513

  28. Park GL, Shirazi B, Marquis J (1997) Dfrn: A new approach for duplication based scheduling for distributed memory multiprocessor systems. In: Proceedings of the 11th international symposium on parallel processing, IPPS ’97. IEEE Computer Society, Washington, DC, pp 157–166

  29. Sarkar V (1989) Partitioning and Scheduling Parallel Programs for Multiprocessors. MIT Press, Cambridge

    MATH  Google Scholar 

  30. Semar Shahul Ahmed Zaki OS (2010) Scheduling task graphs optimally with a*. J Supercomput 51(3):310–332

    Article  Google Scholar 

  31. Shi Z, Dongarra JJ (2006) Scheduling workflow applications on processors with different capabilities. Futur Gener Comput Syst 22:665–675

    Article  Google Scholar 

  32. Shroff P, Watson D, Flann N, Freund R (1996) Genetic simulated annealing for scheduling data-dependent tasks in heterogeneous environments. In: Proceedings of heterogeneous computing workshop, pp 98–104

  33. Sih GC, Lee EA (1993) A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans Parallel Distrib Syst 4(2):175–187

    Article  Google Scholar 

  34. Suter F, Desprez F, Casanova H (2004) From heterogeneous task scheduling to heterogeneous mixed parallel scheduling. In: In Euro-Par. Vivien, pp 230–237

  35. Takamizawa K, Nishizeki T, Saito N (1982) Linear-time computability of combinatorial problems on series-parallel graphs. J ACM 29(3):623–641

    Article  MathSciNet  MATH  Google Scholar 

  36. Topcuouglu H, Hariri S, Wu, MY (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13:260–274

  37. Veldhorst M (1993) A linear time algorithm to schedule trees with communication delays optimally on two machines. Technical report, Utrecht University, Netherlands

  38. Wang G, Wang Y, Liu H, Guo H (2016) Hsip: A novel task scheduling algorithm for heterogeneous computing. Sci Programm 2016(1):1–11

    Google Scholar 

  39. Wu MY, Gajski DD (1990) Hypertool: a programming aid for message-passing systems. IEEE Trans Parallel Distribut Syst 1:330–343

  40. Yang T, Gerasoulis A (1994) Dsc: Scheduling parallel tasks on an unbounded number of processors. IEEE Trans Parallel Distrib Syst 5:951–967

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Minhaj Ahmad Khan.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Khan, M.A. Task scheduling for heterogeneous systems using an incremental approach. J Supercomput 73, 1905–1928 (2017). https://doi.org/10.1007/s11227-016-1894-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-016-1894-5

Keywords

Navigation