Skip to main content

An Improved Heterogeneous Dynamic List Schedule Algorithm

  • Conference paper
  • First Online:
Algorithms and Architectures for Parallel Processing (ICA3PP 2020)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12452))

Abstract

Scheduling algorithm impacts system substantially in terms of throughput and load balance. Traditional methods rely on static criteria, such as earliest finishing time, critical path, and the importance of the nodes, to prioritise workloads towards various hardware settings. In practice, however, a global static scheduling method often works suboptimally given the dependence complexity among tasks and the performance diversity on separate hardware configurations. To cope with such issue, in this paper, we propose an improved heterogeneous dynamic list scheduling algorithm (IHDSA) to balance workload across heterogeneous cores and optimize communication overhead adaptively. The proposed algorithm performs three steps. First, it transforms the DAG task graph into a list and marks job status. Then, it calculates the shortest completion time of three distinctive scheduling schemes and selects the best solution among the three. Finally, it sets up thresholds for computing units and monitors the status to balance the usage of those cores. In our experiment, the IHDSA adaptive scheduling improves the performance significantly over the static counterpart.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Ashouraie, M., Navimipour, N.J.: Priority-based task scheduling on heterogeneous resources in the expert cloud. Kybernetes 44(10), 1455–1471 (2015)

    Article  Google Scholar 

  2. Augonnet, C., Thibault, S., Namyst, R., Wacrenier, P.: StarPU: a unified platform for task scheduling on heterogeneous multicore architectures. Concurr. Comput. Pract. Exp. 23(2), 187–198 (2011)

    Article  Google Scholar 

  3. Baskiyar, S., SaiRanga, P.C.: Scheduling directed a-cyclic task graphs on heterogeneous network of workstations to minimize schedule length. In: Proceedings of the 2003 International Conference on Parallel Processing Workshops 2003, pp. 97–103 (2003)

    Google Scholar 

  4. Bittencourt, L.F., Sakellariou, R., Madeira, E.R.M.: Dag scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm. In: 2010 18th Euromicro Conference on Parallel, Distributed and Network-based Processing, pp. 27–34 (2010)

    Google Scholar 

  5. Carvalho, E., Calazans, N.L.V., Moraes, F.G.: Dynamic task mapping for MPSoCs. IEEE Des. Test Comput. 27, 26–35 (2010)

    Article  Google Scholar 

  6. Castrillon, J., Tretter, A., Leupers, R., Ascheid, G.: Communication-aware mapping of KPN applications onto heterogeneous MPSoCs. DAC Design Automation Conference 2012, 1262–1267 (2012)

    Google Scholar 

  7. Dathathri, R., et al.: Gluon: a communication-optimizing substrate for distributed heterogeneous graph analytics. In: PLDI, pp. 752–768. ACM (2018)

    Google Scholar 

  8. Gao, K., Suganthan, P., Chua, T., Chong, C., Cai, T., Pan, Q.K.: A two-stage artificial bee colony algorithm scheduling flexible job-shop scheduling problem with new job insertion. Expert Syst. Appl. 42(21), 7653–7663 (2015). https://doi.org/10.1016/j.eswa.2015.06.004

    Article  Google Scholar 

  9. Zhao, H., Sakellariou, R.: Scheduling multiple DAGs onto heterogeneous systems. In: Proceedings 20th IEEE International Parallel Distributed Processing Symposium, p. 14 (2006)

    Google Scholar 

  10. Khokhar, A.A., Prasanna, V.K., Shaaban, M.E., Wang, C.: Heterogeneous computing: challenges and opportunities. IEEE Comput. 26(6), 18–27 (1993)

    Article  Google Scholar 

  11. Middendorf, L., Zebelein, C., Haubelt, C.: Dynamic task mapping onto multi-core architectures through stream rewriting. In: 2013 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS), pp. 196–204 (2013)

    Google Scholar 

  12. Munir, E.U., Mohsin, S., Hussain, A., Nisar, M.W., Ali, S.: SDBATs: a novel algorithm for task scheduling in heterogeneous computing systems. In: 2013 IEEE International Symposium on Parallel Distributed Processing, Workshops and PhD Forum, pp. 43–53 (2013)

    Google Scholar 

  13. Möller, L., Indrusiak, L.S., Ost, L., Moraes, F., Glesner, M.: Comparative analysis of dynamic task mapping heuristics in heterogeneous NoC-based MPSoCs. In: 2012 International Symposium on System on Chip (SoC), pp. 1–4 (2012)

    Google Scholar 

  14. Nasonov, D.A., Visheratin, A.A., Butakov, N., Shindyapina, N., Melnik, M., Boukhanovsky, A.: Hybrid evolutionary workflow scheduling algorithm for dynamic heterogeneous distributed computational environment. J. Appl. Log. 24, 50–61 (2017)

    Article  MathSciNet  Google Scholar 

  15. Bajaj, R., Agrawal, D.P.: Improving scheduling of tasks in a heterogeneous environment. IEEE Trans. Parallel Distrib. Syst. 15(2), 107–118 (2004)

    Article  Google Scholar 

  16. Rogers, P.: Heterogeneous system architecture overview. In: Hot Chips Symposium, pp. 1–41. IEEE (2013)

    Google Scholar 

  17. Sakellariou, R., Zhao, H.: A hybrid heuristic for DAG scheduling on heterogeneous systems. In: Proceedings of the 18th International Parallel and Distributed Processing Symposium, 2004, p. 111 (2004)

    Google Scholar 

  18. Saldaña, M., Shannon, L., Chow, P.: The routability of multiprocessor network topologies in FPGAs. In: SLIP, pp. 49–56. ACM (2006)

    Google Scholar 

  19. Samadi, Y., Zbakh, M., Tadonki, C.: E-HEFT: enhancement heterogeneous earliest finish time algorithm for task scheduling based on load balancing in cloud computing. In: HPCS, pp. 601–609. IEEE (2018)

    Google Scholar 

  20. Shekar, V., Izadi, B.: Energy aware scheduling for DAG structured applications on heterogeneous and DVS enabled processors. In: International Conference on Green Computing, pp. 495–502 (2010)

    Google Scholar 

  21. Wen, Y., O’Boyle, M.F.P.: Merge or separate?: multi-job scheduling for OpenCL Kernels on CPU/GPU platforms. In: GPGPU@PPoPP, pp. 22–31. ACM (2017)

    Google Scholar 

  22. Xu, Y., Li, K., Khac, T.T., Qiu, M.: A multiple priority queueing genetic algorithm for task scheduling on heterogeneous computing systems. In: 2012 IEEE 14th International Conference on High Performance Computing and Communication, 2012 IEEE 9th International Conference on Embedded Software and Systems, pp. 639–646 (2012)

    Google Scholar 

  23. Zarkesh-Ha, P., Davis, J.A., Meindl, J.D.: Prediction of net-length distribution for global interconnects in a heterogeneous system-on-a-chip. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 8(6), 649–659 (2000)

    Article  Google Scholar 

Download references

Acknowledgement

This work was supported by Science Foundation Ireland grant 13/RC/2094 to Lero - The Irish Software Research Centre.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Yu Gan or Yuan Wen .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Hu, W. et al. (2020). An Improved Heterogeneous Dynamic List Schedule Algorithm. In: Qiu, M. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2020. Lecture Notes in Computer Science(), vol 12452. Springer, Cham. https://doi.org/10.1007/978-3-030-60245-1_11

Download citation

Publish with us

Policies and ethics