Abstract
Dependent tasks are typically modeled using directed acyclic graphs (DAGs), and scheduling algorithms based on DAGs have been extensively researched. Most of the existing algorithms assume that the task or communication duration is deterministic. Nevertheless, any delays in task execution or communication can significantly affect the scheduling results. Aiming at minimizing the DAGs’ makespan, a heuristic algorithms called heterogeneous optimistic complete time (HOCT) is proposed. The algorithm assumes that the task characteristic values are modeled randomly. It calculates task priorities based on the acceleration ratio and allocates computing resources using an optimistic execution timetable. Then, a Monte-Carlo simulation-based scheduling algorithm which built on the top of HOCT is proposed. Experimental results show that the proposed algorithm achieves better makespan of the stochastic DAG. It also provides a more robust scheduling solution to unpredictability than critical-path-on-a-processor, heterogeneous earliest finish time-no cross and parental prioritization earliest finish time algorithms.
Similar content being viewed by others
Data availability
The datasets generated are available from the corresponding author on reasonable request.
References
Kim KD, Kumar PR (2012) Cyber-physical systems: a perspective at the centennial. Proc IEEE 100:1287–1308. https://doi.org/10.1109/JPROC.2012.2189792
Han Z, Qu G, Liu B et al (2022) Exploit the data level parallelism and schedule dependent tasks on the multi-core processors. Inf Sci 585:382–394. https://doi.org/10.1016/j.ins.2021.10.072
Lumpp F, Aldegheri S, Patel HD et al (2021) Task mapping and scheduling for openVX applications on heterogeneous multi/many-core architectures. IEEE Trans Comput 70(8):1148–1159. https://doi.org/10.1109/TC.2021.3059528
Singh AK, Shafique M, Kumar A et al (2013) Mapping on multi many-core systems survey of current. In: 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC), IEEE, Austin, TX, USA, pp. 1–10. https://doi.org/10.1145/2463209.2488734
Liu J, Li K, Zhu D et al (2017) Minimizing cost of scheduling tasks on heterogeneous multicore embedded systems. ACM Trans Embed Comput Syst 16(2):1–25. https://doi.org/10.1145/2935749
Jarvis SA, He L, Spooner DP et al (2005) The impact of predictive inaccuracies on execution scheduling. Perform Eval 60(1–4):127–139. https://doi.org/10.1016/j.peva.2004.10.015
Mollajafari M (2023) An efficient lightweight algorithm for scheduling tasks onto dynamically reconfigurable hardware using graph-oriented simulated annealing. Neural Comput Appl 35(24):18035–18057. https://doi.org/10.1007/s00521-023-08682-y
Momtazpour M, Assare O, Rahmati N et al (2015) Yield-driven design-time task scheduling techniques for multi-processor system on chips under process variation: a comparative study. IET Comput Digit Tech 9(4):221–229. https://doi.org/10.1049/iet-cdt.2014.0126
Nathan G, Olivier B, Emmanuel J et al (2021) READYS: A reinforcement learning based strategy for heterogeneous dynamic scheduling. In: 2021 IEEE International Conference on Cluster Computing (Cluster), Portland, OR, USA, pp. 70–81. https://doi.org/10.1109/Cluster48925.2021.00031
Cheng Y, Cao Z, Zhang X et al (2023) Multi objective dynamic task scheduling optimization algorithm based on deep reinforcement learning. J Supercomput. https://doi.org/10.1007/s11227-023-05714-1
Emeretlis A, Theodoridis G, Alefragis P et al (2018) Static mapping of applications on heterogeneous multi-core platforms combining logic-based benders decomposition with integer linear programming. ACM Trans Des Autom Electron Syst 23(2):1–24. https://doi.org/10.1145/3133219
Pautet L, Robert T, Tardieu S (2021) Litmus-RT plugins for global static scheduling of mixed criticality systems. J Syst Archit 118:102221–102232. https://doi.org/10.1016/j.sysarc.2021.102221
Jiang X, Sha T, Liu D et al (2022) Flexible and dynamic scheduling of mixed-criticality systems. Sensors 22(19):7528. https://doi.org/10.3390/s22197528
Alsheikhy A, Ammar R, Elfouly R et al (2016) An efficient dynamic scheduling algorithm for periodic tasks in real-time systems using dynamic average estimation. In: 2016 IEEE Symposium on Computers and Communication (ISCC), Messina, Italy, pp. 773–777. https://doi.org/10.1109/ISCC.2016.7543830
Choudhury P, Chakrabarti PP, Kumar R (2012) Online scheduling of dynamic task graphs with communication and contention for multiprocessors. IEEE Trans Parallel Distrib Syst 23(1):126–133. https://doi.org/10.1109/TPDS.2011.104
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. https://doi.org/10.1109/71.993206
Shetti KR, Fahmy SA, Bretschneider T (2013) Optimization of the HEFT algorithm for a CPU-GPU environment. In: 2013 International Conference on Parallel and Distributed Computing, Applications and Technologies, pp. 212–218. https://doi.org/10.1109/pdcat.2013.40
Arif MS, Iqbal Z, Tariq R et al (2019) Parental prioritization-based task scheduling in heterogeneous systems. Arab J Sci Eng 44(4):3943–3952. https://doi.org/10.1007/s13369-018-03698-2
Emeretlis A, Theodoridis G, Alefragis P et al (2014) A hybrid ilp-cp model for mapping directed acyclic task graphs to multicore architectures. In: Proceedings of 2014 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 176–182. https://doi.org/10.1109/IPDPSW.2014.24
Shi Z, Zhao T, Li Q et al (2023) Workflow migration in uncertain edge computing environments based on interval many-objective evolutionary algorithm. Egypt Inform J 24(4):100418–100431. https://doi.org/10.1016/j.eij.2023.100418
Mollajafari M, Shojaeefard MH (2021) TC3PoP: a time-cost compromised workflow scheduling heuristic customized for cloud environments. Clust Comput 24(3):2639–2656. https://doi.org/10.1007/s10586-021-03285-5
Ferrandi F, Lanzi PL, Pilato C et al (2010) Ant colony heuristic for mapping and scheduling tasks and communications on heterogeneous embedded systems. IEEE Trans Comput Aided Des Integr Circuits Syst 29(6):911–924. https://doi.org/10.1109/TCAD.2010.2048354
Prongnuch S, Sitjongsataporn S, Wiangtong T (2020) A heuristic approach for scheduling in heterogeneous distributed embedded systems. Int J Intell Eng Syst 13(1):135–145. https://doi.org/10.22266/ijies2020.0229.13
Mohtavipour SM, Shahhoseini HS (2019) A link-elimination partitioning approach for application graph mapping in reconfigurable computing systems. J Supercomput 76(1):726–754. https://doi.org/10.1007/s11227-019-03056-5
Mohtavipour SM, Shahhoseini HS (2022) An analytically derived vectorized model for application graph mapping in interconnection networks. J Ambient Intell Humaniz Comput 14(7):8899–8911. https://doi.org/10.1007/s12652-021-03637-4
Li K, Tang X, Veeravalli B et al (2015) Scheduling precedence constrained stochastic tasks on heterogeneous cluster systems. IEEE Trans Comput 64(1):191–204. https://doi.org/10.1109/tc.2013.205
Shreya A, Zhihui Z, Marc G et al (2014) Robustness analysis of multiprocessor schedules. In: 2014 International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIV), Agios Konstantinos, Greece, pp. 9–17. https://doi.org/10.1109/SAMOS.2014.6893189
Zhang J, Chen C, Zheng HK et al (2019) A high priority random task fuzzy scheduling algorithm for CPS. In: 2019 Chinese Control And Decision Conference (CCDC), Nanchang, China, pp. 482–487. https://doi.org/10.1109/CCDC.2019.8832879
Muhuri PK, Nath R, Shukla AK (2021) Energy efficient task scheduling for real-time embedded systems in a fuzzy uncertain environment. IEEE Trans Fuzzy Syst 29(5):1037–1051. https://doi.org/10.1109/TFUZZ.2020.2968864
Tang X, Li K, Liao G et al (2011) A stochastic scheduling algorithm for precedence constrained tasks on Grid. Future Gener Comput Syst 27(8):1083–1091. https://doi.org/10.1016/j.future.2011.04.007
Huang K, Wang K, Zheng D et al (2021) Expected energy optimization for real-time multiprocessor SoCs running periodic tasks with uncertain execution time. IEEE Trans Sustain Comput 6(3):398–411. https://doi.org/10.1109/TSUSC.2018.2853621
Canon LC, Jeannot E (2010) Evaluation and optimization of the robustness of DAG schedules in heterogeneous environments. IEEE Trans Parallel Distrib Syst 21(4):532–546. https://doi.org/10.1109/TPDS.2009.84
Sajid M, Raza Z (2017) Energy-aware stochastic scheduler for batch of precedence-constrained jobs on heterogeneous computing system. Energy 125:258–274. https://doi.org/10.1016/j.energy.2017.02.069
Young BD, Pasricha S, Maciejewski AA et al (2013) Heterogeneous energy and makespan constrained DAG scheduling. In: Proceedings of the 2013 Workshop on Energy Efficient High Performance Parallel and Distributed Computing, pp. 3–12. https://doi.org/10.1145/2480347.2480348
Raji M, Nikseresht M (2022) UMOTS: an uncertainty-aware multi-objective genetic algorithm-based static task scheduling for heterogeneous embedded systems. J Supercomput 78(1):279–314. https://doi.org/10.1007/s11227-021-03887-1
McSweeney T, Walton N, Zounon M (2020) An efficient new static scheduling heuristic for accelerated architectures. In: Computational Science – ICCS 2020, Springer International Publishing, Cham, pp. 3–16. https://doi.org/10.1007/978-3-030-50371-0_1
Arabnejad H, Barbosa JG (2014) List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Trans Parallel Distrib Syst 25(3):682–694. https://doi.org/10.1109/tpds.2013.57
Mack J, Arda SE, Ogras UY et al (2022) Performant, multi-objective scheduling of highly interleaved task graphs on heterogeneous system on chip devices. IEEE Trans Parallel Distrib Syst 33(9):2148–2162. https://doi.org/10.1109/tpds.2021.3135876
Braun TD, Siegel HJ, Beck N et al (2001) A comparison of eleven static heuristics for mapping a class of independent tasks onto heterogeneous distributed computing systems. J Parallel Distrib Comput 61(6):810–837. https://doi.org/10.1006/jpdc.2000.1714
Zheng W, Sakellariou R (2013) Stochastic DAG scheduling using a Monte Carlo approach. J Parallel Distrib Comput 73(12):1673–1689. https://doi.org/10.1016/j.jpdc.2013.07.019
Ling-xia W, Hong Z (2015) Research on task scheduling problem based on immune genetic algorithm under the cloud environment. Autom Instrum 3:114–116. https://doi.org/10.14016/j.cnki.1001-9227.2015.03.114
Tobita T, Kasahara H (2002) A standard task graph set for fair evaluation of multiprocessor scheduling algorithms. J Sched 5(5):379–394. https://doi.org/10.1002/jos.116
Emmanuel A, Olivier B, Lionel ED et al (2016) Are static schedules so bad? A case study on cholesky factorization. In: 2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS), IEEE, Chicago, IL, USA, pp. 1021–1030. https://doi.org/10.1109/IPDPS.2016.90
Funding
This work was supported by Yunnan Fundamental Research Key Projects (202101AS070016); Yunnan Province Science and Technology Major Project (202302AD080002); Yunnan Province Key Laboratory of Computer Technology Application Open Fund (CB22144S073A); Yunnan Province “Xingdian Talents Support Plan” Industrial Innovation Talents Project (Yfgr [2019] No. 1096).
Author information
Authors and Affiliations
Contributions
All authors have made contributions to the final draft of this article.
Corresponding author
Ethics declarations
Conflict of interest
The authors confirm that there is no known conflict of interest associated with this work or significant financial support that could have appeared to influence its outcome.
Ethical approval
Not applicable.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Zhang, J., Han, Z. Optimization of uncertain dependent task mapping on heterogeneous computing platforms. J Supercomput (2024). https://doi.org/10.1007/s11227-024-06032-w
Accepted:
Published:
DOI: https://doi.org/10.1007/s11227-024-06032-w