Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Meta-Object Protocol for Environmental Adaptation in a Grid

Similar presentations


Presentation on theme: "A Meta-Object Protocol for Environmental Adaptation in a Grid"— Presentation transcript:

1 A Meta-Object Protocol for Environmental Adaptation in a Grid
Darren Webb and Andrew L. Wendelborn Department of Computer Science University of Adelaide South Australia 5005, Australia

2 Abstract We are developing a disciplined approach to adaptation in grid applications, where reconfigurable behaviour is an inherent part of the computational model. Specifically, we draw upon the concepts of Metaobject Protocol (MOP) and Kahn's Process Networks (KPN) to invoke computational reconfiguration for adaptation in a grid environment. Computational reconfiguration is fundamental to KPN, and formalizes semantics of mechanisms enabling a component to insert a new component, replace itself, or remove itself from a program in computation. We plan to use the model to describe environmental reconfiguration, so changes in the grid environment induce reconfiguration. A MOP is a disciplined software engineering approach that will help us to separate the non-functional concerns of environmental adaptation from the functional concerns of the application. The objectives of this project are to: Develop infrastructure for environmental reconfiguration using KPN Develop a MOP to separate adaptation concerns from functional code Enable detailed customization of when and how adaptation occurs Utilize existing grid software components

3 The PAGIS Grid Client PAGIS is a proof of concept, adaptable grid architecture with a computational engine based on Kahn's process networks. The process network model is a simple and intuitive semantic model that abstracts away from the concerns of execution order. The model is determinate, expresses parallelism, and is computationally reconfigurable. PAGIS utilises a three-tiered model, with a pluggable scheduling architecture. Processes are scheduled according to their type. The Globus plug-in component utilizes existing elements of the Globus toolkit to manage grid resources and distribute the nodes of a process network onto the grid. Server Manager Globus Plugin Client Plugin Distribution Tools Channel Service Process Service COG Broker RSL LDAP query [Ref to IPPS99 paper - take some printed copies?/url?] Worker Gatekeeper MDS Job Manager GRAM GRAM data Worker JVM fork

4 Self-tuning Applications
We are exploiting the process network model to enable safe application reconfiguration triggered by events in the underlying computational environment. As a consequence, the application transparently evolves to match resource availability and quality. For example, if a grid resource becomes available, a component might reconfigure to migrate, and replace its implementation with one that matches the new resource. Environmentally-induced reconfiguration promotes separation of concerns. Application programmers concentrate on functional aspects of their programs, while the underlying computational environment manages the mapping of software abstractions to grid resources, and subsequent monitoring and adaptation to changes in the grid environment. Abstraction Mapping Host 2 Host 1 Host 3 [ref to IDEA00 paper - take some printed copies?/url?] Realization

5 Metaobject Protocol Adaptation is not a functional concern for grid applications! A self-tuning model promotes separation, but specific adaptation requirements should not pollute the application. A MOP separates non-functional concerns from the functional concerns of the application, promoting highly-customizable software architectures. The MOP uses reification to transparently intercept method invocations at the baselevel, and apply new behaviour at the metalevel. For process networks, the role of the MOP is to detect or induce quiescence and apply change. A grid programmer achieves specific adaptation requirements by tailoring the MOP, not the application. Baselevel Metalevel Metaobject Host 2 Host 1 Host 3 [ref to CCGrid01 paper] Realization

6 Observation Infrastructure
Environmental reconfiguration requires some agent to observe change in the grid environment, recognise that change, and react accordingly. The infrastructure: Obtains run-time observations of the computational environment. We use NWS to measure and statistically predict resource performance. Detect trends and events within the observations. Such events are stimuli for change. This is based on NwsAlarm. Determine the appropriate reaction to the stimuli. Metaobject components encode the response to stimulus: what reconfigurations are available, most appropriate, and how they are applied. The infrastructure is event-based for generality. Application programmers customize metaobjects (not applications) to best meet their requirements. Baselevel Metalevel alarm CPU Threshold Metaobject NWS Host 2 Host 1 Host 3 [ref to CCGrid01 paper] Realization NWS Sensor


Download ppt "A Meta-Object Protocol for Environmental Adaptation in a Grid"

Similar presentations


Ads by Google