The Internet Operating System: Middleware for Adaptive Distributed Computing

  • Authors:
  • Kaoutar El Maghraoui;Travis J. Desell;Boleslaw K. Szymanski;Carlos A. Varela

  • Affiliations:
  • -;-;-;Department of Computer Science, Rensselaer Polytechnic Institute, Troy, Ny

  • Venue:
  • International Journal of High Performance Computing Applications
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Large-scale, dynamic, and heterogeneous networks of computational resources (a.k.a. grids) promise to provide high performance and scalability to computationally intesive applications. To fulfill this promise, grid environments require complex resource management. We propose decetralized middleware-triggered dynamic reconfiguration straegies to enable application adaptation to the constantly changing resource availability of Internet-scale shared coputational grids. As a proof of concept, we present a sofware framework for dynamically reconfigurable distributed applications. The Internet Operating System (IOS) is a middleware infrastructure which aims at freeing appliction developers from dealing with non-functional concerns while seeking to optimize application performance and glbal resource utilization. IOS consists of distributed middlware agents that are capable of interconnecting themselves in various virtual peer-to-peer topologies. IOS middleware agents: 1) profile application communication patterns; 2) evaluate the dynamics of the underlying physical resources; and 3) reconfigure application components by changing their mappings to physical resources through migration and by changing their granularity through a split and merge mechanism. A key characteristic of IOS is its decentralized coordination, thereby avoiding the use of global knowledge and thus enabling scalable reconfiguration. The IOS middlware is programming model-independent: we have implmented an actor programming model interface for SALSA programs and also a process programming model interface for MPI programs. Experimental results show that adaptive middleware can be an effective approach to reconfiguring distributed applications with various ratios of communiction to computation in order to improve their performance, and more effectively utilize grid resources.