Transcript Slide 1

Applications and Middleware
Hakki Eres, Fenglian Xu
& Graeme Pound
© Geodise Project, University of Southampton, 2003.
Geodise compute toolbox
• Matlab allows engineers to script complex
workflows required by CFD/optimisation
• Geodise compute toolbox is a client to Globus
v2.0 resources
• Matlab functions which utilise the Java CoG
Globus client
• To be familiar to users these functions are
consistent with the Matlab syntax
© Geodise Project, University of Southampton, 2003.
Geodise compute toolbox
Matlab
Globus Toolkit
•
•
•
•
•
Familiar, and mature, environment
Cross platform (Windows/Linux)
Allows scripting
Seamless integration of Java
Java CoG kit
•
•
•
•
•
Globus client implemented in Java
Under development (v 0.9.13)
GridFTP client (v 0.9.14)
Robust with an active user base
http://www.globus.org/cog/java
•
•
•
Version 2.0 features
– Data transfer - GridFTP
– Monitoring & Discovery -MDS
– Job submission - GRAM
– Security - GSI
Widely deployed
Currently no windows client
Version 3.0 will be an OGSA
implementation
© Geodise Project, University of Southampton, 2003.
Geodise compute toolbox
Matlab commands allow the user to exploit Globus resources
gd_certinfo()
Returns info about the user’s certificate
gd_createproxy()
Creates a Globus proxy certificate for the user’s credentials
gd_destroyproxy()
Destroys the local copy of the user's Globus proxy certificate
gd_getfile()
Retrieves a remote file using GridFtp
gd_jobkill()
Kills a Globus GRAM specified by job handle
gd_jobpoll()
Queries the status of a Globus GRAM job until complete
gd_jobstatus()
Gets the status of a Globus GRAM job specified by job handle
gd_jobsubmit()
Submits a compute job to a Globus GRAM job manager
gd_listjobs()
Returns all the job handles belonging to the user
gd_proxyinfo()
Returns information about the user's proxy certificate
gd_proxyquery()
Queries whether a valid proxy certificate exists.
gd_putfile()
Puts a remote file using GridFtp
© Geodise Project, University of Southampton, 2003.
Running Fluent on a Globus resource
© Geodise Project, University of Southampton, 2003.
Querying Fluent
© Geodise Project, University of Southampton, 2003.
Options optimisation package
Matlab (local)
OPTIONS Mex function
Metropolis compute resource
GAMBIT
FLUENT
nullConstraint()
NACA_objfun()
Geodise
compute toolkit
GRAM job submission/
GridFTP file transfer
© Geodise Project, University of Southampton, 2003.
NACA Gambit/Fluent Optimisation
• Fluent CFD solver
• Single design variable:
 (angle of attack)
• Objective function:
Lift/drag ratio
• Dynamic hill climbing
• Optimum at the upper
limit for design variable
• Matlab structure returned
© Geodise Project, University of Southampton, 2003.
Jython scripting
•
•
•
•
Python is an interpretive scripting language
Jython is a Java implementation of Python
Free and Open Source alternative to Matlab
Code reuse from the Geodise compute and
database toolboxes
• Possible uses for scripting on the server
© Geodise Project, University of Southampton, 2003.
Fluent Remote Simulation Facility
• Commercial ‘power
by the hour’
solutions may make
sense to small
businesses
• One example is the
Fluent Remote
Simulation Facility
providing CFD on
demand
© Geodise Project, University of Southampton, 2003.
Notification by SMS & email
• Exploiting SMS in Grid environment
• Two-way communication
– Send notifications to a mobile user
– User can steer or kill a computation by replying to a message
– Relieve users from being bound to their desktops
• Using SMTP to send images and large files
• Plug-n-play into any Grid-enabled environment
© Geodise Project, University of Southampton, 2003.
Notification by SMS & email
© Geodise Project, University of Southampton, 2003.