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.


























Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
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
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
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
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
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
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
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
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
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
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
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
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
Tejaswini C, Melody M, Teng-Sheng M (2018) Prioritized task scheduling in fog computing. ACM SE '18 March 29–31, 2018, Richmond, KY, USA
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
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
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
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
Ijaz S, Ullah Munir E (2009) MOPT: list-based heuristic for scheduling workfows in cloud environment. J Supercomput 75:3740–3768
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
AlEbrahim S, Ahmad I (2017) Task scheduling for heterogeneous computing systems. J Supercomput 73:2313–2338
Ilavarasan E, Thambidura P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103
Ahmad I, Kwok YK (1998) On exploiting task duplication in parallel program scheduling. IEEE Trans Parallel Distrib Syst 9(9):872–892
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
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
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
Cirou B, Jeannot E (2001) Triplet: a clustering scheduling algorithm for heterogeneous systems. In: International conference on parallel processing workshops, pp 231–236
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))
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
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)
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
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
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
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
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
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
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
Satyanarayanan M (2017) The emergence of edge computing. Computer 50(1):30–39
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
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
Tao Y, Gerasoulis A (1994) ADSC: scheduling parallel tasks on an unbounded number of processors. IEEE TPDS 5(9):951–967
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
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
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
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
Prasad Rima B, Maier M (2017) Workflow scheduling in multi-tenant cloud computing environments. IEEE Trans Parallel Distrib Syst 28(1):290–304
Rodriguez MA, Buyya R (2018) Scheduling dynamic workloads in multi-tenant scientific workflow as a service platforms. Future Gener Comput Syst 79:739–750
Li X, Qian L, Ruiz R (2016) Cloud workflow scheduling with deadlines and time slot availability. IEEE Trans Serv Comput 11(2):329–340
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
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
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
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-021-00935-9