Min-heap-based scheduling algorithm: an approximation algorithm for homogeneous and heterogeneous distributed systems

One of the most important issues in the design of distributed systems is process scheduling, which maps applications to resources in an attempt to reduce the application execution time or maximise resource utilisation. The complexity involved in finding good scheduling solutions has motivated the design of several heuristics and approximation algorithms. Although heuristics aim at finding good solutions within acceptable time constraints, they do not guarantee solution quality. On the other hand, approximation-based algorithms provide optimal solution bounds, but they are usually designed to address simple scenarios. In an attempt to combine the best of both algorithmic approaches, this paper proposes the min-heap-based scheduling algorithm (MHSA), which finds solutions for homogeneous and heterogeneous distributed environments within acceptable time constraints and optimal solution bounds. MHSA considers applications that can be bag-of-tasks or which communicate among each other. Such solutions minimise the application execution time and maximise resource utilisation; therefore, MHSA is a system-oriented scheduling algorithm. Results confirm that MHSA provides better solutions than schedulers such as Random, Round-Robin, Workload-Queue and List-Scheduling. In addition, MHSA provides an -approximation ratio for reaching optimal solution bounds.

[1]  Abraham Silberschatz,et al.  Operating System Concepts , 1983 .

[2]  K SHAHU CHATRAPATI,et al.  COMPETITIVE EQUILIBRIUM APPROACH FOR LOAD BALANCING A COMPUTATIONAL GRID WITH COMMUNICATION DELAYS , 2010 .

[3]  Torben Hagerup Allocating Independent Tasks to Parallel Processors: An Experimental Study , 1996, IRREGULAR.

[4]  Yuren Zhou,et al.  Performance Analysis of the (1+1) Evolutionary Algorithm for the Multiprocessor Scheduling Problem , 2014, Algorithmica.

[5]  Thomas L. Casavant,et al.  A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems , 1988, IEEE Trans. Software Eng..

[6]  Fatos Xhafa,et al.  Computational models and heuristic methods for Grid scheduling problems , 2010, Future Gener. Comput. Syst..

[7]  Ronald L. Graham,et al.  Bounds on multiprocessing anomalies and related packing algorithms , 1972, AFIPS '72 (Spring).

[8]  Xin-She Yang,et al.  Introduction to Algorithms , 2021, Nature-Inspired Optimization Algorithms.

[9]  Michel Gendreau,et al.  Metaheuristics in Combinatorial Optimization , 2022 .

[10]  Ronald L. Graham,et al.  Bounds for certain multiprocessing anomalies , 1966 .

[11]  Ishfaq Ahmad,et al.  Analysis, evaluation, and comparison of algorithms for scheduling task graphs on parallel processors , 1996, Proceedings Second International Symposium on Parallel Architectures, Algorithms, and Networks (I-SPAN'96).

[12]  Nikhil Bansal,et al.  Approximating Real-Time Scheduling on Identical Machines , 2014, LATIN.

[13]  Rajkumar Buyya,et al.  A Linear Programming Driven Genetic Algorithm for Meta-Scheduling on Utility Grids , 2008, 2008 16th International Conference on Advanced Computing and Communications.

[14]  Uwe Schwiegelshohn,et al.  Theory and Practice in Parallel Job Scheduling , 1997, JSSPP.

[15]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[16]  Bertrand M. T. Lin,et al.  Fast approximation algorithms for bi-criteria scheduling with machine assignment costs , 2014, Eur. J. Oper. Res..

[17]  Nawwaf N. Kharma,et al.  A hybrid heuristic-genetic algorithm for task scheduling in heterogeneous processor networks , 2011, J. Parallel Distributed Comput..

[18]  Satoshi Fujita,et al.  Approximation algorithms for multiprocessor scheduling problem , 2000 .

[19]  Domenico Ferrari,et al.  An Experimental Study of Load Balancing Performance , 1987 .

[20]  Daniele Vigo,et al.  Bin packing approximation algorithms: Survey and classification , 2013 .

[21]  Heinz Stockinger,et al.  Defining the grid: a snapshot on the current view , 2007, The Journal of Supercomputing.

[22]  Peter B. Galvin,et al.  Operating System Concepts, 4th Ed. , 1993 .

[23]  Nikhil Bansal,et al.  Approximating Vector Scheduling: Almost Matching Upper and Lower Bounds , 2014, Algorithmica.

[24]  Éva Tardos,et al.  An approximation algorithm for the generalized assignment problem , 1993, Math. Program..

[25]  Ronald L. Graham,et al.  Performance Guarantees for Scheduling Algorithms , 1978, Oper. Res..

[26]  Klaudia Frankfurter Computers And Intractability A Guide To The Theory Of Np Completeness , 2016 .

[27]  Richard M. Karp,et al.  Reducibility among combinatorial problems" in complexity of computer computations , 1972 .

[28]  Salim Hariri,et al.  Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing , 2002, IEEE Trans. Parallel Distributed Syst..

[29]  Yan Kang,et al.  An Ant Colony System for Dynamic Voltage Scaling Problem in Heterogeneous System , 2014 .

[30]  Selim G. Akl,et al.  Scheduling Algorithms for Grid Computing: State of the Art and Open Problems , 2006 .

[31]  Chunlin Li,et al.  A system-centric scheduling policy for optimizing objectives of application and resource in grid computing , 2009, Comput. Ind. Eng..

[32]  Moni Naor,et al.  Job Scheduling Strategies for Parallel Processing , 2017, Lecture Notes in Computer Science.

[33]  Mukesh Singhal,et al.  Load distributing for locally distributed systems , 1992, Computer.

[34]  Edward G. Coffman,et al.  An Application of Bin-Packing to Multiprocessor Scheduling , 1978, SIAM J. Comput..

[35]  David P. Williamson,et al.  The Design of Approximation Algorithms , 2011 .

[36]  Jiadong Yang,et al.  Task scheduling using Bayesian optimization algorithm for heterogeneous computing environments , 2011, Appl. Soft Comput..

[37]  Naidila Sadashiv,et al.  Cluster, grid and cloud computing: A detailed comparison , 2011, 2011 6th International Conference on Computer Science & Education (ICCSE).

[38]  Christian Blum,et al.  Metaheuristics in combinatorial optimization: Overview and conceptual comparison , 2003, CSUR.

[39]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[40]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[41]  Ladislau Bölöni,et al.  A Comparison of Eleven Static Heuristics for Mapping a Class of Independent Tasks onto Heterogeneous Distributed Computing Systems , 2001, J. Parallel Distributed Comput..

[42]  J. van Leeuwen,et al.  Job Scheduling Strategies for Parallel Processing , 2003, Lecture Notes in Computer Science.

[43]  Laurence T. Yang,et al.  Grid job scheduling using Route with Genetic Algorithm support , 2008, Telecommun. Syst..

[44]  Mostafa Haghi Kashani,et al.  A Novel Bee Colony Approach to Distributed Systems Scheduling , 2012 .

[45]  Andrew Chi-Chih Yao,et al.  Resource Constrained Scheduling as Generalized Bin Packing , 1976, J. Comb. Theory A.

[46]  Dheerendra Singh,et al.  ANALYSIS, COMPARISON AND PERFORMANCE EVALUATION OF BNP SCHEDULING ALGORITHMS IN PARALLEL PROCESSING , 2010 .

[47]  Torben Hagerup,et al.  Allocating Independent Tasks to Parallel Processors: An Experimental Study , 1996, J. Parallel Distributed Comput..

[48]  Richard M. Karp,et al.  Reducibility Among Combinatorial Problems , 1972, 50 Years of Integer Programming.

[49]  Shigen Shen,et al.  Task Scheduling Optimization in Cloud Computing Based on Heuristic Algorithm , 2012, J. Networks.