Scaling up your toy applications:
There are many methods suggested for the application model. Lets start
with one. The
application model is very much flux and we may be able to contribute to
a stable model.
Lets study the paper:
Toward a Framework for Preparing and Executing Adaptive Grid Programs
by Ken Kennedy et al. See technical papers site:
http://www.globus.org/research/paper.html
1. Discusses grid Application Development Software GrADS
2. Purpose: provide good resource allocation for grid applications, support
adaptive reallocation if perfromance degrades.
3. Obviously we are looking at resource intensive application.
4. Resources: computing resources, data sensors, database /data sources
Resources and infrastructure supported by
--- NASA's information power grid (IPG)
--- NSF's PACI National Technology grid
--- Distributed Tera Scale Facility
--- NSF's Grid Physics Network
---- EU Data grid and EuroGrid Projects
and many others.
5. How can you contribute?
--- few software tools exits to design, develop and
assembly applications.
--- new approaches to software development, and programming
are reqquired.
--- simplify the methods for grid computing to achieve
widespread acceptance.
6. GrADS attempts to address the challanges listed above.
Application submission and execution environment.
user provides:
-- Program must be configurable: Configurable
Object Program (COP)
-- Input data
GrADS intiates
--- resource selection
--- launches the program
--- sees its execution through to completion.
An Application Manager is responsible for all
these activities.
7. See Figure 1.
8. Application Execution Scenario:
-- A user or problem solving environment (PSE)
on behalf of the user, provides the
"code" along with its selection
of resources and runtime behavior.
-- This is given to the Builder which prepares the COP.
-- Builder evaluates the resource needs of the
application and provides a model of
resource space: Application
Abstract Resource and Topology (AART) model
AART is to kick strat
the resource selection process and to provide the information
needed by the Mapper and
Resource Selection Evaluator.
-- User /PSE then starts the Application Manager;
it needs
-- handle of cop, IO location information,
the problem size information, memory requeirements,
resource selestion criteria,
run-time specific parameters
(how will you specify these?)
-- Application Manager retrieves pieces
of COP, AART Model is combined with resource selection criteria
to obtain Resource selection
Seed Model.
--- Then Application Manager invokes
scheduler/resource negotiator
--- Scheduler/Resource Negotiator is
in charge selecting the grid resources (S/RN): best fit, ok fit policies
etc.
--- Once the collection of resources
has been identified, the application Manager begins the launch sequence.
--- the state of the impending execution
is stored for recovery purposes.
--- Program preperation System (PPS)
does the binding: invokes Mapper to perform actual layout, creates
optimized binaries,
taliors programs componets to actual resources, inserts monitoring resources.
--- Now the Contract Monitor takes
over by acquiring the data from sensors and adjustign the performance
needs. There
is a Perfromance Monitoring Setup Module invoked by Contract Monitor.
---- ReScheduler
is invoked is needed.