Utilization-Based Techniques for Statically Mapping Heterogeneous Applications onto the HiPer-D Heterogeneous Computing System

This research investigates the problem of allocating a set of heterogeneous applications to a set of heterogeneous machines connected together by a high-speed network. The proposed resource allocation heuristics were implemented on the High Performance Distributed Computing Program's (HiPer-D) Naval Surface Warfare Center testbed. The goal of this study is to design static resource allocation heuristics that balance the utilization of the computation and network resources while ensuring very low failure rates. A failure occurs if no allocation is found that allows the system to meet its resource and quality of service constraints. The broader goal is to determine an initial resource allocation that maximizes the time before run-time re-allocation is required for managing an increased workload. This study proposes two heuristics that perform well with respect to the load-balancing and failure rates. These heuristics are, therefore, very desirable for HiPer-D like systems where low failure rates can be a critical requirement.

[1]  Viktor K. Prasanna,et al.  Utilization-based heuristics for statically mapping real-time applications onto the HiPer-D heterogeneous computing system , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[2]  Edward D. Lazowska,et al.  Adaptive load sharing in homogeneous distributed systems , 1986, IEEE Transactions on Software Engineering.

[3]  Arif Ghafoor,et al.  On the Assignment Problem of Arbitrary Process Systems to Heterogeneous Distributed Computer Systems , 1992, IEEE Trans. Computers.

[4]  Viktor K. Prasanna,et al.  A metric and mixed-integer-programming-based approach for resource allocation in dynamic real-time systems , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

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

[6]  Ami Marowka,et al.  The GRID: Blueprint for a New Computing Infrastructure , 2000, Scalable Comput. Pract. Exp..

[7]  David Fernández-Baca,et al.  Allocating Modules to Processors in a Distributed System , 1989, IEEE Trans. Software Eng..

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

[9]  Douglas C. Schmidt,et al.  Applying Adaptive Real-time Middleware to Address Grand Challenges of COTS-based Mission-Critical Real-Time Systems , 1999 .

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

[11]  Rudolf Eigenmann,et al.  Robust resource allocation in dynamic distributed heterogeneous computing systems , 2003 .

[12]  Anna Hác,et al.  Dynamic Load Balancing in a Distributed System Using a Decentralized Algorithm , 1987, ICDCS.

[13]  Binoy Ravindran,et al.  Resource Management Middleware for Dynamic, Dependable Real-Time Systems , 2004, Real-Time Systems.

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

[15]  Asser N. Tantawi,et al.  Optimal static load balancing in distributed computer systems , 1985, JACM.

[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]  Anthony A. Maciejewski,et al.  Static mapping heuristics for tasks with dependencies, priorities, deadlines, and multiple versions in heterogeneous environments , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[18]  Richard E. Korf,et al.  Performance of Linear-Space Search Algorithms , 1995, Artif. Intell..

[19]  Hisao Kameda,et al.  Optimal static load balancing of multi-class jobs in a distributed computer system , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

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

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

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

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

[24]  Sayed Atef Banawan,et al.  A comparative study of load sharing in heterogeneous multicomputer systems , 1992, Annual Simulation Symposium.

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

[26]  Anthony A. Maciejewski,et al.  Heterogeneous Computing: Goals, Methods, and Open Problems , 2001, HiPC.

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

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

[29]  Douglas C. Schmidt,et al.  The Design and Performance of a Real-Time CORBA Scheduling Service , 2001, Real-Time Systems.

[30]  Ravishankar K. Iyer,et al.  Prediction-Based Dynamic Load-Sharing Heuristics , 1993, IEEE Trans. Parallel Distributed Syst..

[31]  Peter M. Dew,et al.  A periodic symmetrically-initiated load balancing algorithm for distributed systems , 1994, 14th International Conference on Distributed Computing Systems.

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

[33]  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).

[34]  Viktor K. Prasanna,et al.  Greedy Heuristics for Resource Allocation in Dynamic Distributed Real-Time Heterogeneous Computing Systems , 2002, PDPTA.

[35]  Peter M. Dew,et al.  A periodic symmetrically-initiated load balancing algorithm for distributed systems , 1994, OPSR.

[36]  Zhang Yongbing,et al.  Parametric Analysis of Optimal Static Load Balancing in Distributed Computer Systems , 1992 .

[37]  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).

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

[39]  Douglas C. Schmidt,et al.  Adaptive scheduling for real-time, embedded information systems , 1999, Gateway to the New Millennium. 18th Digital Avionics Systems Conference. Proceedings (Cat. No.99CH37033).

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

[41]  Xueyan Tang,et al.  Optimizing static job scheduling in a network of heterogeneous computers , 2000, Proceedings 2000 International Conference on Parallel Processing.

[42]  David D. Yao,et al.  Optimal load balancing and scheduling in a distributed computer system , 1991, JACM.