Abstract
Task schedule optimization enables to attain high performance in both homogeneous and heterogeneous computing environments. The primary objective of task scheduling is to minimize the execution time of an application graph. However, this is an NP-complete (non-deterministic polynomial) undertaking. Additionally, task scheduling is a challenging problem due to the heterogeneity in the modern computing systems in terms of both computation and communication costs. An application can be considered as a task graph represented using Directed Acyclic Graphs (DAG). Due to the heterogeneous system, each task has different execution time on different processors. The primary concern in this problem domain is to reduce the schedule length with minimum complexity of the scheduling procedure. This work presents a couple of hybrid heuristics, based on a list and guided random search to address this concern. The proposed heuristic, i.e., Hybrid Heuristic and Genetic-based Task Scheduling Algorithm for Heterogeneous Computing (HHG) uses Genetic Algorithm and a list-based approach. This work also presents another heuristic, namely, Hybrid Task Duplication, and Genetic-based Task Scheduling Algorithm for Heterogeneous Computing (HTDG). The present work improves the quality of initial GA population by inducing two diverse guided chromosomes. The proposal is compared with four state-of-the-art methods, including two evolutionary algorithms for the same task, i.e., New Genetic Algorithm (NGA) and Enhanced Genetic Algorithm for Task Scheduling (EGA-TS), and two list-based algorithms, i.e., Heterogeneous Earliest Finish Time (HEFT), and Predict Earliest Finish Time (PEFT). Results show that the proposed solution performs better than its counterparts based on occurrences of the best result, average makespan, average schedule length ratio, average speedup, and the average running time. HTDG yields 89% better results and HHG demonstrates 56% better results in comparisons to the four state-of-the-art task scheduling algorithms.
Similar content being viewed by others
References
Chunlin, L., Jianhang, T., Youlong, L.: Hybrid cloud adaptive scheduling strategy for heterogeneous workloads. J. Grid. Comput. 17(3), 419–446 (2019)
Lin, W., Peng, G., Bian, X., Xu, S., Chang, V., Li, Y.: Scheduling algorithms for heterogeneous cloud environment: Main resource load balancing algorithm and time balancing algorithm. J.Grid. Comput. 17(4), 699–726 (2019)
Khan, M.A.: Scheduling for heterogeneous systems using constrained critical paths. Parallel Comput. 38(4–5), 175–193 (2012)
Gupta, S., Kumar, V., Agarwal, G.: Task scheduling in multiprocessor system using genetic algorithm. In: 2010 Second International Conference on Machine Learning and Computing, pp. 267–271 (2010)
Yousefi, M.H.N., Goudarzi, M.: A task-based greedy scheduling algorithm for minimizing energy of MapReduce jobs. J. Grid. Comput. 16(4), 535–551 (2018)
García-Valdez, M., Trujillo, L., Merelo, J.J., De Vega, F.F., Olague, G.: The evospace model for pool-based evolutionary algorithms. J. Grid. Comput. 13(3), 329–349 (2015)
Pan, J., McElhannon, J.: Future edge cloud and edge computing for internet of things applications. IEEE Internet Things J. 5(1), 439–449 (2018)
Sharma, S.K., Wang, X.: Live data analytics with collaborative edge and cloud processing in wireless. IoT Netw. IEEE Access. 5(99), 4621–4635 (2017)
Du, B., Huang, R., Xie, Z., Ma, J., Lv, W.: KID model-driven things-edge-cloud computing paradigm for traffic data as a service. IEEE Netw. 32(1), 34–41 (2018)
Maheswaran, M., Braun, T.D., Siegel, H.J.: Heterogeneous distributed computing. Encyclopedia Electrical Electron. Eng. 8, 679–690 (1999)
Feitelson, D.G., Rudolph, L., Schwiegelshohn, U., Sevcik, K.C., Wong, P.: Theory and practice in parallel job scheduling. In: Workshop on Job Scheduling Strategies for Parallel Processing, pp. 1–34 (1997)
Liou, J.C., Palis, M.A.: A comparison of general approaches to multiprocessor scheduling. In: Proceedings 11th International Parallel Processing Symposium, pp. 152–156 (1997)
Kwok, Y.K., Ahmad, I.: Benchmarking the task graph scheduling algorithms. In Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing, pp. 531–537 (1998)
Keshanchi, B., Souri, A., Navimipour, N.J.: An improved genetic algorithm for task scheduling in the cloud environments using the priority queues: formal verification, simulation, and statistical testing. J. Syst. Softw. 124, 1–21 (2017)
Braun, D.T., et al.: 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 (2001)
Arabnejad, H.: List based task scheduling algorithms on heterogeneous systems-an overview, in Doctoral Symposium in Informatics Engineering, vol. 93, (2013)
Topcuoglu, H., Hariri, S., Wu, M.Y.: Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans. Parallel Distributed Syst. 13(3), 260–274 (2002)
Wang, G., Wang, Y., Liu, H., Guo, H.: HSIP: a novel task scheduling algorithm for heterogeneous computing. Sci. Program. 2016, 1–11 (2016)
Halim, Z., Waqas, M., Hussain, S.F.: Clustering large probabilistic graphs using multi-population evolutionary algorithm. Inf. Sci. 317, 78–95 (2015)
Halim, Z., Muhammad, T.: Quantifying and optimizing visualization: an evolutionary computing-based approach. Inf. Sci. 385, 284–313 (2017)
Wang, L., Siegel, H.J., Roychowdhury, V.P., Maciejewski, A.A.: Task matching and scheduling in heterogeneous computing environments using a genetic-algorithm-based approach. J. Parallel Distributed Comput. 47(1), 8–22 (1997)
Bohler, M., Moore, F.W., Pan, Y.: Improved Multiprocessor Task Scheduling Using Genetic Algorithms. In: FLAIRS Conference, pp. 140–146 (1999)
Omara, F.A., Arafa, M.M.: Genetic algorithms for task scheduling problem. Foundations Comput. Intell. 3, 479–507 (2009)
Xu, Y., Li, K., Hu, J., Li, K.: A genetic algorithm for task scheduling on heterogeneous computing systems using multiple priority queues. Inf. Sci. 270, 255–287 (2014)
Ahmad, S.G., Liew, C.S., Munir, E.U., Ang, T.F., Khan, S.U.: A hybrid genetic algorithm for optimization of scheduling workflow applications in heterogeneous computing systems. J. Parallel Distributed Comput. 87, 80–90 (2016)
Keshanchi, B., Navimipour, N.J.: Priority-based task scheduling in the cloud systems using a memetic algorithm. J. Circuits. Syst. Comput. 25(10), 1650119 (2016)
Akbari, M., Rashidi, H., Alizadeh, S.H.: An enhanced genetic algorithm with new operators for task scheduling in heterogeneous computing systems. Eng. Appl. Artif. Intell. 61, 35–46 (2017)
Mansouri, N., Zade, B.M.H., Javidi, M.M.: Hybrid task scheduling strategy for cloud computing by modified particle swarm optimization and fuzzy theory. Comput. Ind. Eng. 130, 597–633 (2019)
Abd Elaziz, M., Xiong, S., Jayasena, K.P.N., Li, L.: Task scheduling in cloud computing based on hybrid moth search algorithm and differential evolution. Knowl.-Based Syst. 169, 39–52 (2019)
Abed, I.A., Koh, S.P., Sahari, K.S.M., Jagadeesh, P., Tiong, S.K.: Optimization of the time of task scheduling for dual manipulators using a modified electromagnetism-like algorithm and genetic algorithm. Arab. J. Sci. Eng. 39(8), 6269–6285 (2014)
Zomaya, A.Y., Ward, C., Macey, B.: Genetic scheduling for parallel processor systems: comparative studies and performance issues. IEEE Trans. Parallel Distributed Syst. 10(8), 795–812 (1999)
Fogel, D.B.: Evolutionary algorithms in theory and practice. Complexity. 2(4), 26–27 (1997)
Zames, G., Ajlouni, N.M., Ajlouni, N.M., Ajlouni, N.M., Holland, J.H., Hills, W.D., Goldberg, D.E.: Genetic algorithms in search, optimization and machine learning. Inf. Technol. J. 3(1), 301–302 (1981)
Song, S., Hwang, K., Kwok, Y.K.: Risk-resilient heuristics and genetic algorithms for security-assured grid job scheduling. IEEE Trans. Comput. 55(6), 703–719 (2006)
Ahmad, I., Kwok, Y.K.: A new approach to scheduling parallel programs using task duplication. In 1994 International Conference on Parallel Processing, vol. 2, pp. 47, 1994–51
Halim, Z., Ali, O., Khan, G.: On the efficient representation of datasets as graphs to mine maximal frequent itemsets, IEEE Transactions on Knowledge and Data Engineering, pp. 1–18 (2019)
Arabnejad, H., Barbosa, J.G.: List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Trans. Parallel Distributed Syst. 25(3), 682–694 (2013)
Tang, X., Li, K., Liao, G., Li, R.: List scheduling with duplication for heterogeneous computing systems. J. Parallel Distributed Comput. 70(4), 323–329 (2010)
Bansal, S., Kumar, P., Singh, K.: An improved duplication strategy for scheduling precedence constrained graphs in multiprocessor systems. IEEE Trans Parallel Distributed Syst. 14(6), 533–544 (2003)
Wang, L., Khan, S.U., Chen, D., KołOdziej, J., Ranjan, R., Xu, C.Z., Zomaya, A.: Energy-aware parallel task scheduling in a cluster. Futur. Gener. Comput. Syst. 29(7), 1661–1670 (2013)
AlEbrahim, S., Ahmad, I.: Task scheduling for heterogeneous computing systems. J. Supercomput. 73(6), 2313–2338 (2017)
Hidalgo, J.I., De Vega, F.F.: Parallel bioinspired algorithms on the grid and cloud. J. Grid Comput. 13(3), 305–308 (2015)
Halim, Z., Baig, A.R., Zafar, K.: Evolutionary search in the space of rules for creation of new two-player board games. Int. J. Artif. Intell. Tools. 23(02), 1350028 (2014)
Hussain, S.F., Iqbal, S.: CCGA: co-similarity based co-clustering using genetic algorithm. Appl. Soft Comput. 72, 30–42 (2018)
Hussain, S.F., Haris, M.: A k-means based co-clustering (kCC) algorithm for sparse, high dimensional data. Expert Syst. Appl. 118, 20–34 (2019)
Halim, Z., Rehan, M.: On identification of driving-induced stress using electroencephalogram signals: a framework based on wearable safety-critical scheme and machine learning. Inform. Fusion. 53, 66–79 (2020)
Shukri, S.E., Al-Sayyed, R., Hudaib, A., Mirjalili, S.: Enhanced multi-verse optimizer for task scheduling in cloud computing environments. Expert Syst. Appl. 168, 114230 (2020)
Mansouri, N., Javidi, M.M.: Cost-based job scheduling strategy in cloud computing environments. Distributed Parallel Databases. 38, 365–400 (2019)
Acknowledgments
The authors wish to thank GIK Institute for providing research facilities. This work was sponsored by the GIK Institute graduate research fund under GA-1 scheme.
Data Availability Statement
The data that support the findings of this study are available from the corresponding author upon reasonable request.
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
Sulaiman, M., Halim, Z., Lebbah, M. et al. An Evolutionary Computing-Based Efficient Hybrid Task Scheduling Approach for Heterogeneous Computing Environment. J Grid Computing 19, 11 (2021). https://doi.org/10.1007/s10723-021-09552-4
Received:
Accepted:
Published:
DOI: https://doi.org/10.1007/s10723-021-09552-4