Skip to main content
Log in

Scheduling Heterogeneous Systems Using Relative Latencies

  • Research Article - Computer Engineering and Computer Science
  • Published:
Arabian Journal for Science and Engineering Aims and scope Submit manuscript

Abstract

Scheduling of parallel modules of an application may produce a significant impact on the performance. The problem of finding optimal schedule is, however, NP-complete. The diversity of the processing elements adds to the complexity that is addressed by presenting heuristic algorithms. This paper presents a novel heuristic Relative Latency-based Scheduling (RLS) for producing schedules for heterogeneous systems. The suggested approach makes use of processing capabilities of the existing processors for diverse number of successors in a task graph while making scheduling decisions. The experiments have been performed on a large number of graphs using different topologies including fork–join, Laplace equation solver, Cholesky decomposition and random graphs. The RLS variants produce better results with a significant difference in schedule length as compared to the well-known HEFT and LMT 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.

Similar content being viewed by others

References

  1. Chrtienne, P.: Task scheduling with interprocessor communication delays. Eur. J. Oper. Res. 57(3), 348–354 (1992). doi:10.1016/0377-2217(92)90346-B. http://www.sciencedirect.com/science/article/B6VCT-48NBG6V-1SV/2/95468ef9c192edb0a47f2f29707afdb0

  2. Graham, R.; Lawler, E.; Lenstra, J.; Kan, A.R.: Optimization and approximation in deterministic sequencing and scheduling: a survey. Ann. Discrete Math. 5, 287–326 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  3. Papadimitriou, C.; Yannakakis, M.: Towards an architecture-independent analysis of parallel algorithms. In: STOC ’88: Proceedings of the Twentieth Annual ACM Symposium on Theory of Computing, pp. 510–513. ACM, New York, NY, USA (1988). doi:10.1145/62212.62262

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

    Article  MathSciNet  MATH  Google Scholar 

  5. Darbha, S.; Agrawal, D.P.: Optimal scheduling algorithm for distributed-memory machines. IEEE Trans. Parallel Distrib. Syst. 9, 87–95 (1998). doi:10.1109/71.655248

    Article  Google Scholar 

  6. Veldhorst, M.: A linear time algorithm to schedule trees with communication delays optimally on two machines. Technical Report RUU-CS-93-04, Eindhoven University of Technology (1993)

  7. Yang, T.; Gerasoulis, A.: DSC: scheduling parallel tasks on an unbounded number of processors. IEEE Trans. Parallel Distrib. Syst. 5, 951–967 (1994). doi:10.1109/71.308533

    Article  Google Scholar 

  8. Al-Mouhamed, M.: Lower bound on the number of processors and time for scheduling precedence graphs with communication costs. IEEE Trans. Softw. Eng. 16, 1390–1401 (1990). doi:10.1109/32.62447

    Article  MathSciNet  Google Scholar 

  9. El-Rewini, H.; Lewis, T.G.: Scheduling parallel program tasks onto arbitrary target machines. J. Parallel Distrib. Comput. 9(2), 138–153 (1990). doi:10.1016/0743-7315(90)90042-N

    Article  MATH  Google Scholar 

  10. Iverson, M.A.; Zgner, F.; Gregory, O.; Follen, G.J.: Parallelizing existing applications in a distributed heterogeneous environment. In: 4th Heterogeneous Computing Workshop (HCW ’95, pp. 93–100) (1995)

  11. Khan, M.A.: Task scheduling for heterogeneous systems using an incremental approach. J. Supercomput. 73(5), 1905–1928 (2017)

    Article  Google Scholar 

  12. Kruatrachue, B.; Lewis, T.: Grain size determination for parallel processing. IEEE Softw. 5, 23–32 (1988). doi:10.1109/52.1991

    Article  Google Scholar 

  13. Kwok, Y.K.; Ahmad, I.: Dynamic critical-path scheduling: an effective technique for allocating task graphs to multiprocessors. IEEE Trans. Parallel Distrib. Syst. 7, 506–521 (1996)

    Article  Google Scholar 

  14. Lee, C.Y.; Hwang, J.J.; Chow, Y.C.; Anger, F.D.: Multiprocessor scheduling with interprocessor communication delays. Oper. Res. Lett. 7(3), 141–147 (1988). doi:10.1016/0167-6377(88)90080-6. http://www.sciencedirect.com/science/article/B6V8M-48MPVK2-1M/2/6ce4b43d61181989ed65585f59e9f408

  15. Maheswaran, M.; Siegel, H.J.: A dynamic matching and scheduling algorithm for heterogeneous computing systems. Heterogeneous Computing Workshop 57 (1998). doi:10.1109/HCW.1998.666545

  16. Shi, Z.; Dongarra, J.J.: Scheduling workflow applications on processors with different capabilities. Future Gener. Comput. Syst. 22, 665–675 (2006). doi:10.1016/j.future.2005.11.002

    Article  Google Scholar 

  17. Sih, G.C.; Lee, E.A.: A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans. Parallel Distrib. Syst. 4(2), 175–187 (1993)

    Article  Google Scholar 

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

  19. Topcuoglu, H.; Hariri, S.; Wu, M.Y.: Task scheduling algorithms for heterogeneous processors. Heterogeneous Computing Workshop 3 (1999). doi:10.1109/HCW.1999.765092

  20. Cirou, B.; Jeannot, E.: Triplet: a clustering scheduling algorithm for heterogeneous systems. In: IEEE Symposium on Reliable Distributed Systems, pp. 231–236. IEEE (2001)

  21. Gerasoulis, A.; Yang, T.: A comparison of clustering heuristics for scheduling directed acyclic graphs on multiprocessors. J. Parallel Distrib. Comput. 16(4), 276–291 (1992). doi:10.1016/0743-7315(92)90012-C. http://www.sciencedirect.com/science/article/B6WKJ-4BRJJ23-2S/2/fc1925064e66c33d6dd85b414435a3af

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

  23. Liou, J.C.; Palis, M.A.: 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 (1996)

  24. Ahmad, I.; Kwok, Y.K.: On exploiting task duplication in parallel program scheduling. IEEE Trans. Parallel Distrib. Syst. 9(9), 872–892 (1998). doi:10.1109/71.722221

    Article  Google Scholar 

  25. Bozda, D.; Ozguner, F.; Catalyurek, U.V.: Compaction of schedules and a two-stage approach for duplication-based dag scheduling. IEEE Trans. Parallel Distrib. Syst. 20, 857–871 (2009). doi:10.1109/TPDS.2008.260

    Article  Google Scholar 

  26. Chen, H.B.; Shirazi, B.; Kavi, K.; Hurson, A.R.: 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 (1993)

  27. Darbha, S.; Agrawal, D.: Sdbs: a task duplication based optimal scheduling algorithm. In: Scalable High-Performance Computing Conference, 1994, Proceedings of the, pp. 756 –763 (1994). doi:10.1109/SHPCC.1994.296717

  28. Doan, A.: Fsunzgner: Ldbs: a duplication based scheduling algorithm for heterogeneous computing systems. International Conference on Parallel Processing, p. 352 (2002). doi:10.1109/ICPP.2002.1040891

  29. Kwok, Y.K.; Ahmad, I.: Exploiting duplication to minimize the execution times of parallel programs on message-passing systems. In: Sixth IEEE Symposium on Parallel and Distributed Processing, 1994. Proceedings. pp. 426 –433 (1994). doi:10.1109/SPDP.1994.346138

  30. Park, G.; Shirazi, B.; Marquis, J.: Dfrn: A new approach for duplication based scheduling for distributed memory multiprocessor systems. Parallel Processing Symposium, International 157 (1997). doi:10.1109/IPPS.1997.580875

  31. Jiang, Y.; Shao, Z.; Guo, Y.; Zhang, H.; Niul, K.: Drscro: a metaheuristic algorithm for task scheduling on heterogeneous systems. Math. Probl. Eng. 2015(1), 1–20 (2015)

    MathSciNet  Google Scholar 

  32. Xu, Y.; Li, K.; He, L.; Truong, T.K.: A DAG scheduling scheme on heterogeneous computing systems using double molecular structure-based chemical reaction optimization. J. Parallel Distrib. Comput. 73(9), 1306–1322 (2013)

    Article  Google Scholar 

  33. Subramanian, R.; Pande, S.: Efficient program partitioning based on compiler controlled communication. In: Parallel and Distributed Processing, Lecture Notes in Computer Science, vol. 1586, pp. 4–18. Springer, Berlin (1999). doi:10.1007/BFb0097884

  34. Almeida, V.A.F.; Vasconcelos, I.M.M.; Árabe, J.N.C.; Menascé, D.A.: 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, pp. 683–691. IEEE Computer Society Press, Los Alamitos (1992)

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. Scheduling Heterogeneous Systems Using Relative Latencies. Arab J Sci Eng 43, 569–584 (2018). https://doi.org/10.1007/s13369-017-2689-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s13369-017-2689-6

Keywords

Navigation