An improved list-based task scheduling algorithm for fog computing environment

Abstract

A high-performance execution of programs predominately depends on the efficient scheduling of tasks. An application consists of a sequence of tasks that can be represented as a directed acyclic graph (DAG). The tasks in the DAG have precedence constraints between them and each task has a different timeline on different processors. In this paper, a new list-based scheduling algorithm is proposed which schedules the tasks which are represented as a DAG structure. The main focus of this algorithm is to schedule the tasks to the suitable processing node in fog environment as the fog nodes have limited processing capacity. The assignment of tasks on the fog node should consider both the computation cost of the node and the execution finishing time of the node. The proposed algorithm has three phases. (1) the level sorting phase, where the independent tasks are identified (2) in the Task prioritization phase the proposed algorithm assigns priority to the task which has more successors so that more tasks in the next level can start their execution and (3) in the task selection phase a balanced combination of local optimal and global optimal approach is considered to assign a task to a suitable processor which further enhances the processor selection phase results in minimizing both the makespan and overall computation cost of the processors. Extensive experiments are carried out using randomly generated graphs and graphs from the real-world to analyze the performance of the proposed algorithm. The results show that the proposed algorithm outperforms all other well-known algorithms like predict earliest finish time, heterogeneous earliest finish time algorithm, minimal optimistic processing time, and SDBBATS in terms of performance matrices like average scheduling length ratio, speedup, and makespan.

This is a preview of subscription content, access via your institution.

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
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26

References

  1. 1.

    Bonomi F, Milito R, Zhu J, Addepalli S (2012) Fog computing and its role in the internet of things. In: Proceedings of the first edition of the MCC workshop on mobile cloud computing, MCC ’12, New York, NY, USA, 2012. ACM, pp 13–16

  2. 2.

    Agarwal S, Yadav S, Yadav A (2016) An efficient architecture and algorithm for resource provisioning in fog computing. MCEP. https://doi.org/10.5815/ijieeb.2016.01.06

    Article  Google Scholar 

  3. 3.

    Kwok Y, Ahmed I (1996) Dynamic critical-path scheduling: an effective technique for allocation task graphs to multi-processors. IEEE Trans Parallel Distrib Syst 7(5):506–521

    Article  Google Scholar 

  4. 4.

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

    Article  Google Scholar 

  5. 5.

    Ilavarasan E, Thambidurai P, Mahilmannan R (2005) Performance effective task scheduling algorithm for heterogeneous computing system. In: The 4th internationalsymposium on parallel and distributed computing. IEEE, pp 28–38

  6. 6.

    Luiz F, Bittencourt RS, Edmundo RMM (2010) Dag cheduling using a lookahead variant of the heterogeneous earliestfinish time algorithm. In: 18th Euromicro international conferenceon parallel, distributed and network-based processing (PDP). IEEE, pp 27–34

  7. 7.

    Shetti KR, Fahmy SA, Bretschneider T ( 2013) Optimization of the HEFT algorithm for a CPU-GPU environment. In: IEEE parallel and distributed computing. applications and technologies (PDCAT). International conference on, pp 212–218

  8. 8.

    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

    Article  Google Scholar 

  9. 9.

    Hong H, Tsai P, Hsu C (2016) Dynamic module deployment in a fog computing platform. In: 2016 18th Asia–Pacific network operations and management symposium (APNOMS), Kanazawa, 2016, pp 1–6

  10. 10.

    Pham X, Huh E (2016) Towards task scheduling in a cloud-fog computing system. In: Proceedings of the 2016 18th Asia–Pacific network operations and management symposium (APNOMS), Kanazawa, Japan, 5–7 October 2016, pp 1–4

  11. 11.

    Taneja M, Davy A (2017) Resource aware placement of IoTapplication modules in fog-cloud computing paradigm. In: Integrated network and service management (IM), 2017 IFIP/IEEE symposium on.IEEE, pp 1222–1228

  12. 12.

    Yang Y, Zhao S, Zhang W, Chen Y, Luo X, Wang J (2018) DEBTS: delay energy balanced task scheduling in homogeneous fog networks. IEEE Internet Things J 5:2094–2106

    Article  Google Scholar 

  13. 13.

    Tejaswini C, Melody M, Teng-Sheng M (2018) Prioritized task scheduling in fog computing. ACM SE '18 March 29–31, 2018, Richmond, KY, USA

  14. 14.

    Amir K, Abdelhakim H, El Mostapha A (2019) On the fog-cloud cooperation: how fog computing can address latency concerns of IoT application. In: 2019 fourth international conference on fog and mobile edge computing (FMEC), IEEE, pp 166–172

  15. 15.

    Zahra R, Mahboobe R, Mohsen N (2019) LAMP: a hybrid fog-cloud latency-aware module placement algorithm for IoT applications. In: 5th conference on knowledge-based engineering and innovation (KBEI), Iran University of Science and Technology, IEEE, Tehran, Iran, pp 845–850

  16. 16.

    Shahzad Arif M, Iqbal Z, Tariq R, Aadil F, Awais M (2019) Parental prioritization-based task scheduling in heterogeneous systems. Arab J Sci Eng 44:3943–3952

    Article  Google Scholar 

  17. 17.

    Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. J Parallel Distrib Comput 70(4):323–329

    Article  Google Scholar 

  18. 18.

    Ijaz S, Ullah Munir E (2009) MOPT: list-based heuristic for scheduling workfows in cloud environment. J Supercomput 75:3740–3768

    Article  Google Scholar 

  19. 19.

    Munir EU, Mohsin S, Hussain A, Nisar MW, Ali S (2013) SDBATS: a novel algorithm for task scheduling in heterogeneous computing systems. In: Proceedings of IEEE IPDPS workshops (IPDPSW), 2013

  20. 20.

    AlEbrahim S, Ahmad I (2017) Task scheduling for heterogeneous computing systems. J Supercomput 73:2313–2338

    Article  Google Scholar 

  21. 21.

    Ilavarasan E, Thambidura P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103

    Article  Google Scholar 

  22. 22.

    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 

  23. 23.

    Baskiyar S, Dickinson C (2005) Scheduling directed a-cyclic graph on a bounded set of heterogeneous processors using task duplication. J Parallel Distrib Comput 65:911–921

    Article  Google Scholar 

  24. 24.

    Agarwal A, Kumar P (2009) Economical duplication based task scheduling for heterogeneous and homogeneous computing systems. In: IEEE international advance computing conference, 2009, pp 6–7

  25. 25.

    Boeres C, Filho JV, Rebello VEF (2004) A cluster based strategy for scheduling task on heterogeneous processors. In: Proceedings of 16th symposium on computer architecture and high performance computing (SBAC-PAD), 2004, pp 214–221

  26. 26.

    Cirou B, Jeannot E (2001) Triplet: a clustering scheduling algorithm for heterogeneous systems. In: International conference on parallel processing workshops, pp 231–236

  27. 27.

    Kanemitsu H, Hanada M, Nakazato H (2016) Clustering-based task scheduling in a large number of heterogeneous processors. IEEE Trans Parallel Distrib Syst 27(11):3144–3157 ((2))

    Article  Google Scholar 

  28. 28.

    Bonomi F, Milito R, Natarajan P, Zhu J (2014) Fog computing: A platform for internet of things and analytics. In: Big data and internet of things: a roadmap for smart environments. Springer, pp 169–186

  29. 29.

    Masood A, Ullah Munir E, Mustafa Rafique M, Khan SU (2015) HETS: heterogeneous edge and task scheduling algorithm for heterogeneous computing systems. In: 2015 IEEE 17th international conference on high performance computing and communications (HPCC)

  30. 30.

    Singh S, Chiu Y, Tsai Y, Yang J (2016) Mobile edge fog computing in 5G era: architecture and implementation. In: IEEE international computer symposium (ICS), pp 731–735

  31. 31.

    Cisco Systems (2016) Fog computing and the internet of things: extend the cloud to where the things are, p 6. http://www.cisco.com. Accessed 10 Jan 2019

  32. 32.

    Sakellariou R, Zhao H (2004) A hybrid heuristic for dag scheduling on heterogeneous systems. In: 18th international symposium on parallel and distributed processing. IEEE, p 111

  33. 33.

    Guoqi X, Renfa L, Keqin L (2015) Heterogeneity-driven end-to-end synchronized scheduling for precedence constrained tasks and messages on networked embedded systems. JPDC 83(C):1–12

    Google Scholar 

  34. 34.

    Shirahata K, Sato H, Matsuoka S (2010) Hybrid map task scheduling for gpu-based heterogeneous clusters. In: Cloud computing technology and science (CloudCom), pp 733–740

  35. 35.

    Zhao H, Sakellariou R (2003) An experimental investigation into the rank function of the heterogeneous earliest finish time scheduling algorithm. In: Euro-Par 2003. Parallel processing. Springer, pp 189–194

  36. 36.

    Ahmed A, Ahmed E ( 2016) A survey on mobile edge computing. In: Intelligent systems and control (ISCO). 10th international conference on. IEEE, pp 1–8

  37. 37.

    Satyanarayanan M (2017) The emergence of edge computing. Computer 50(1):30–39

    Article  Google Scholar 

  38. 38.

    Datta SK, Bonnet C, Haerri J (2015) Fog computing architecture to enable consumer centric internet of things services. In: International symposium on consumer electronics (ISCE), pp 1–2

  39. 39.

    Pahl C, Lee B, (2015) Containers and clusters for edge cloud architectures—a technology review. In: Future internet of things and cloud (FiCloud). 3rd international conference on. IEEE, pp 379–386

  40. 40.

    Tao Y, Gerasoulis A (1994) ADSC: scheduling parallel tasks on an unbounded number of processors. IEEE TPDS 5(9):951–967

    Google Scholar 

  41. 41.

    Gulzar Ahmad S, Ullah Munir E, Nisar W (2011) A segmented approach for dag scheduling in heterogeneous environment. In: 12th international conference on parallel and distributed computing. Applications and technologies (PDCAT). IEEE, pp 362–367

  42. 42.

    Grewe D, O’Boyle MFP (2011) A static task partitioning approach for heterogeneous systems using opencl. In: Proceedings of the 20th international conference on compiler construction, vol 201. Springer, pp 286–305. https://doi.org/10.1007/978-3-642-19861-8_16

  43. 43.

    Canon L-C, Jeannot E, Sakellariou J, Zhang W (2008) Comparative evaluation of the robustness of dag scheduling heuristics. Grid Comput. https://doi.org/10.1007/978-0-387-09457-1_7

    Article  Google Scholar 

  44. 44.

    Chen H, Liu XZG, Pedrycz W (2017) Ushncertainty-aware online scheduling for real-time workflows in cloud service environment. IEEE Trans Serv Comput 10(6):929–941

    Article  Google Scholar 

  45. 45.

    Prasad Rima B, Maier M (2017) Workflow scheduling in multi-tenant cloud computing environments. IEEE Trans Parallel Distrib Syst 28(1):290–304

    Article  Google Scholar 

  46. 46.

    Rodriguez MA, Buyya R (2018) Scheduling dynamic workloads in multi-tenant scientific workflow as a service platforms. Future Gener Comput Syst 79:739–750

    Article  Google Scholar 

  47. 47.

    Li X, Qian L, Ruiz R (2016) Cloud workflow scheduling with deadlines and time slot availability. IEEE Trans Serv Comput 11(2):329–340

    Article  Google Scholar 

  48. 48.

    Liu Z, Yang X, Yang Y, Wang K, Mao G (2019) DATS: dispersive stable task scheduling in heterogeneous fog networks. IEEE Internet Things J 6(2):3423–3436

    Article  Google Scholar 

  49. 49.

    Li H, Louis-Claude C, Henri C, Yves R, Frederic V (2018) Checkpointing workflows for fail-stop errors. IEEE Trans Comput 67(8):1105–1120

    MathSciNet  MATH  Google Scholar 

  50. 50.

    Vaquero LM, Rodero-Merino L (2014) Finding your way in the fog: towards a comprehensive definition of fog computing. SIGCOMM Comput Commun Rev 44(5):27–32

    Article  Google Scholar 

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to R. Madhura.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Madhura, R., Elizabeth, B.L. & Uthariaraj, V.R. An improved list-based task scheduling algorithm for fog computing environment. Computing 103, 1353–1389 (2021). https://doi.org/10.1007/s00607-021-00935-9

Download citation

Keywords

  • Directed acyclic graphs
  • Makespan
  • List scheduling
  • Fog environment
  • Task scheduling

Mathematical Subject Classification

  • 68W10
  • 68W15