Static resource allocation for heterogeneous computing environments with tasks having dependencies, priorities, deadlines, and multiple versions

Heterogeneous computing (HC) environments composed of interconnected machines with varied computational capabilities are well suited to meet the computational demands of large, diverse groups of tasks. One aspect of resource allocation in HC environments is matching tasks with machines and scheduling task execution on the assigned machines. We will refer to this matching and scheduling process as mapping. The problem of mapping these tasks onto the machines of a distributed HC environment has been shown, in general, to be NP-complete. Therefore, the development of heuristic techniques to find near-optimal solutions is required. In the HC environment investigated, tasks have deadlines, priorities, multiple versions, and may be composed of communicating subtasks. The best static (off-line) techniques from some previous studies are adapted and applied to this mapping problem: a genetic algorithm (GA), a GENITOR-style algorithm, and a two phase greedy technique based on the concept of Min-min heuristics. Simulation studies compare the performance of these heuristics in several overloaded scenarios, i.e., not all tasks can be executed by their deadlines. The performance measure used is the sum of weighted priorities of tasks that completed before their deadline, adjusted based on the version of the task used. It is shown that for the cases studied here, the GENITOR technique finds the best results, but the faster two phase greedy approach also performs very well.

[1]  R. F. Freund,et al.  Dynamic Mapping of a Class of Independent Tasks onto Heterogeneous Computing Systems , 1999, J. Parallel Distributed Comput..

[2]  J Baker,et al.  REDUCING BIAS AND NEFFICIENCY IN THE SELECTION ALGORITHM, GENETIC ALGORITHMS AND APPLICATIONS , 2000 .

[3]  Atakan Dogan,et al.  Scheduling of a meta-task with QoS requirements in heterogeneous computing systems , 2006, J. Parallel Distributed Comput..

[4]  Lonnie R. Welch,et al.  Heterogeneous resource management for dynamic real-time systems , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

[5]  Sadiq M. Sait,et al.  Task matching and scheduling in heterogeneous systems using simulated evolution , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[6]  Ioana Banicescu,et al.  Performance of scheduling scientific applications with adaptive weighted factoring , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[7]  L. Darrell Whitley,et al.  The GENITOR Algorithm and Selection Pressure: Why Rank-Based Allocation of Reproductive Trials is Best , 1989, ICGA.

[8]  Xiao Qin,et al.  A dynamic and reliability-driven scheduling algorithm for parallel real-time jobs executing on heterogeneous clusters , 2005, J. Parallel Distributed Comput..

[9]  Raj Jain,et al.  The Art of Computer Systems Performance Analysis : Tech-niques for Experimental Design , 1991 .

[10]  Ian Foster,et al.  The Grid 2 - Blueprint for a New Computing Infrastructure, Second Edition , 1998, The Grid 2, 2nd Edition.

[11]  Enrico Gobbetti,et al.  Encyclopedia of Electrical and Electronics Engineering , 1999 .

[13]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[14]  R. F. Freund,et al.  Guest Editor's Introduction: Heterogeneous Processing , 1993 .

[15]  Lalit M. Patnaik,et al.  Genetic algorithms: a survey , 1994, Computer.

[16]  Michael W. Godfrey,et al.  An overview of MSHN: the Management System for Heterogeneous Networks , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[17]  Fred W. Glover,et al.  Tabu Search , 1997, Handbook of Heuristics.

[18]  Gilbert Syswerda,et al.  Uniform Crossover in Genetic Algorithms , 1989, ICGA.

[19]  Anthony A. Maciejewski,et al.  Task Matching and Scheduling in Heterogenous Computing Environments Using a Genetic-Algorithm-Based Approach , 1997, J. Parallel Distributed Comput..

[20]  Viktor K. Prasanna,et al.  Heterogeneous computing: challenges and opportunities , 1993, Computer.

[21]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[22]  Lawrence Davis,et al.  Applying Adaptive Algorithms to Epistatic Domains , 1985, IJCAI.

[23]  Anthony A. Maciejewski,et al.  A semi-static approach to mapping dynamic iterative tasks onto heterogeneous computing systems , 2006, J. Parallel Distributed Comput..

[24]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[25]  Max Crochemore,et al.  The Computer Science and Engineering Handbook , 2004 .

[26]  Kenneth Alan De Jong,et al.  An analysis of the behavior of a class of genetic adaptive systems. , 1975 .

[27]  Anthony A. Maciejewski,et al.  Robust resource allocations in parallel computing systems: model and heuristics , 2005, 8th International Symposium on Parallel Architectures,Algorithms and Networks (ISPAN'05).

[28]  Debra A. Hensgen,et al.  The relative performance of various mapping algorithms is independent of sizable variances in run-time predictions , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[29]  John K. Antonio,et al.  Software support for heterogeneous computing , 1996, CSUR.

[30]  Nostrand Reinhold,et al.  the utility of using the genetic algorithm approach on the problem of Davis, L. (1991), Handbook of Genetic Algorithms. Van Nostrand Reinhold, New York. , 1991 .

[31]  Hong Zhang,et al.  Segmented min-min: a static mapping algorithm for meta-tasks on heterogeneous computing systems , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

[32]  Zbigniew Michalewicz,et al.  Genetic Algorithms + Data Structures = Evolution Programs , 1992, Artificial Intelligence.

[33]  Howard Jay Siegel,et al.  A Mathematical Model and Scheduling Heuristics for Satisfying Prioritized Data Requests in an Oversubscribed Communication Network , 2000, IEEE Trans. Parallel Distributed Syst..

[34]  R. F. Freund,et al.  Scheduling resources in multi-user, heterogeneous, computing environments with SmartNet , 1998, Proceedings Seventh Heterogeneous Computing Workshop (HCW'98).

[35]  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..

[36]  Chien-Chung Shen,et al.  A Graph Matching Approach to Optimal Task Assignment in Distributed Computing Systems Using a Minimax Criterion , 1985, IEEE Trans. Computers.

[37]  Ami Marowka,et al.  The GRID: Blueprint for a New Computing Infrastructure , 2000, Parallel Distributed Comput. Pract..

[38]  Howard Jay Siegel,et al.  An Analysis of Procedures and Objective Functions for Heuristics to Perform Data Staging in Distributed Systems , 2006, J. Interconnect. Networks.

[39]  Imtiaz Ahmad,et al.  An Integrated Technique for Task Matching and Scheduling onto Distributed Heterogeneous Computing Systems , 2002, J. Parallel Distributed Comput..

[40]  Anthony A. Maciejewski,et al.  Dynamically mapping tasks with priorities and multiple deadlines in a heterogeneous environment , 2007, J. Parallel Distributed Comput..

[41]  Arif Ghafoor,et al.  A distributed heterogeneous supercomputing management system , 1993, Computer.

[42]  A. A. Maciejewski,et al.  Heterogeneous Computing , 2002 .

[43]  Ishfaq Ahmad,et al.  Optimal task assignment in heterogeneous distributed computing systems , 1998, IEEE Concurr..

[44]  Edward G. Coffman,et al.  Computer and job-shop scheduling theory , 1976 .

[45]  Viktor K. Prasanna,et al.  A flexible multi-dimensional QoS performance measure framework for distributed heterogeneous systems , 2006, Cluster Computing.

[46]  Binoy Ravindran,et al.  Adaptive QoS and resource management using a posteriori workload characterizations , 1999, Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium.

[47]  Dr. Zbigniew Michalewicz,et al.  How to Solve It: Modern Heuristics , 2004 .

[48]  K. Dejong,et al.  An analysis of the behavior of a class of genetic adaptive systems , 1975 .

[49]  Howard Jay Siegel,et al.  Heterogeneous Distributed Computing , 1999 .

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

[51]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[52]  Jean-Paul Watson,et al.  The impact of approximate evaluation on the performance of search algorithms for warehouse scheduling , 1999 .

[53]  Allalaghatta Pavan,et al.  Admission control and resource allocation in a strictly priority based network , 2000, Proceedings Seventh International Conference on Real-Time Computing Systems and Applications.

[54]  Ladislau Bölöni,et al.  Characterizing Resource Allocation Heuristics for Heterogeneous Computing Systems , 2005, Adv. Comput..

[55]  Ishfaq Ahmad,et al.  Non-cooperative, semi-cooperative, and cooperative games-based grid resource allocation , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[56]  Howard Jay Siegel,et al.  Representing Task and Machine Heterogeneities for Heterogeneous Computing Systems , 2000 .

[57]  Yskandar Hamam,et al.  Task allocation for maximizing reliability of distributed systems: A simulated annealing approach , 2006, J. Parallel Distributed Comput..

[58]  Raj Jain,et al.  The art of computer systems performance analysis - techniques for experimental design, measurement, simulation, and modeling , 1991, Wiley professional computing.

[59]  G. Syswerda,et al.  Schedule Optimization Using Genetic Algorithms , 1991 .

[60]  James E. Baker,et al.  Reducing Bias and Inefficienry in the Selection Algorithm , 1987, ICGA.

[61]  Anthony A. Maciejewski,et al.  Static allocation of resources to communicating subtasks in a heterogeneous ad hoc grid environment , 2006, J. Parallel Distributed Comput..