Title: Quality Aware Service Planning in Computational Grids
1Quality Aware Service Planning in Computational
Grids
Sharath Babu MusunooriNetworks and Distributed
SystemsSimula Research Laboratory, Norway2nd
International Doctoral Symposium on Middleware
05 28 November 2 December, 2005 Grenoble,
France
2Motivation
- Grids are future platforms for parallel
distributed systems - Grid applications acquire required network and
computational resources of the grid environment - Acceptable application performance in a grid
environment remains a difficult engineering
challenge - In particular, in the case of quality-senstive
applications - Quality-aware service configuration
- A mapping of individual service components of a
given application onto the underlying grid
resources while satisfying the specified quality
requirements.
3Presentation Outline
- Background
- Problem description
- Quality-aware service planning
- Quality deviation model
- Introduction to Learning Automata (LA)
- Modelling LA
- Learning algorithm
- Simulation
- Conclusion
4Background (1)
- Application
- A service graph with corresponding communication
links - A service is an independent functional component
blueprint - Grid Environment
- Each node hosts a middleware agent (capsule)
representing a local run-time environment - A capsule includes functionality to organize
local resources (CPU, mem), provides basic
life-cycle management support for application
services
5Background (2)
- Component architectures simplify application
development - The notion of independent composition and
deployment - A clean separation between logical and physical
layers of component-based programming - Platform-managed QoS approach
- Support quality characteristics of the
application during deployment and runtime
6Problem Description (1)
- Component technology simplifes application
design - Service quality depends on amount of resource
availability - Capsules are containers for hosting services
- How to partition service set into the number of
capsules sub-sets such that all services get
sufficient resources to allow them to achieve at
least the minimum quality
7Problem Description(2)
- The objective of a service is to maximize its
quality - The optimal service configuration
- Simultaneously tries to maximize the quality
objective of all services from the given set of
avaialble resources - The combinatorial explosion makes it a complex
task - Seek a feasible solution instead of optimal one.
- A feasible service configuration
- Tries to achieve at least the minimum required
quality levels for all services from the given
set of available resources
8Quality-Aware Service Planning (1)
9Quality-Aware Service Planning (2)
- General weighted sum solution technique
- Derives a solution set by finding the convex sum
of objectives - User chooses appropriate weights
- solutions points are pulled over one or more
objectives - Even the optimal configuration may not guarantee
the overall application performance
10Quality Deviation Model (1)
- Finds a nice compromise between the quality
objectives - Aspired quality levels allow the service user to
set more realistic quality targets - Error is a distance between the aspired and
actual quality levels - Proposes to minimize the error
- Fine-grained trade-off
- Guarantees the overall application performance
11Quality Deviation Model (2)
- Estimated service configuration when grid
environment is over provisioned with excess
resources
12Quality Deviation Model (3)
- Estimated service configuration when resources
of the grid environment are scarce
13Introduction to Learning Automata (1)
- A simple model for adaptive decision making in
unknown random environments - Example a person finding the best route from
home to office.
14Introduction to Learning Automata (2)
- The automaton adapts itself to the environment
- Complete generality of the concept of the action
set - LA is a simple unit from which complex systems
could be constructed - Convergence results exist
- A general approach to stochastic optimization
- Fixed-structure stochastic automata (FSSA)
15Modelling LA in the Context
- Each service is an automaton
- Grid platform is an environment
- Services choose capsules and learn from the grid
environments feedback
16Learning Algorithm (1)
- Establishes autonomous learning environment for
services - Unsatisfied services move between capsules
- Move is a model of service move in computing
- Services learn and even unlearn from the grid
environment - Learning factor is a service confidence level
- A positive feedback allows services to increase
their confidence - Services with zero confidence adjust with their
minimun required quality levels
17Learning Algorithm (2)
- Always finds a feasible configuration
- In best case of grid platform with excess
resources - Probability of any service get reward is high
- All services gain their maximum quality
- In the worst case of grid platform with scarce
resource - Probability of any service get penalized is high
- All services get satisfied with at least minimum
specified quality
18Simulation
19Conclusion Future Work
- Quality deviation model provides a fine-grained
trade-off - First learning algorithm designed and
implemented - LA establishes an autonomous learning
environment - Learning algorithm always converges to a
feasible configuration, scales well with number
of services - Quality Synchronization
- Different variants of learning
- Application service reconfiguration
20Questions
21Learning Algorithm
- repeat
- Select a capsule, Cm with least quality
- Select a service, Si with least quality on
capsule Cm - Move the service, Si to a random capsule, Cn
- if (move is successful)
- Reward all services on capsule Cm
- Reward the service, Si on capsule Cn
- else
- Penalize all services on capsule Cn
- All services with zero confidence adjust
with minimum quality - until (all services are happy)
22Simulation
- Initialization
- Generated grid platform confirms the generality
of the physical grid - Minimum service quality requirements are set
- Makes sure that there is a feasible
configuration - Implemented in C and ran on Condor system
- Tested for various combination of services and
capsules - 500 simulations for each combination
- Efficiency is measured in terms of the number of
service moves