Title: OGF HPC-Basic Profile Application Interoperability Demonstration
1OGF HPC-Basic Profile Application
Interoperability Demonstration
2Overview
- Application
- Standards
- Implementations
- Demo
- Future
3Scientific Application
4Plasma Charge Minimization
- Undergraduate project
- Total system energy minimization of point charges
around the surface of a sphere - Three different applications
- Pre processing generate input files
- Main processing parallel distributed processing
- Post-processing choose optimal solution
5Participation
- DEISA UNICORE, SuSE, AMD 64-bit, 1 core
- NorduGrid ARC, Debian Linux, i686, 16 core
- UK NGS/OMII-UK GridSAM, Scientific Linux 4.7,
AMD 64-bit, 256 core - University of Virginia Campus Grid GENESIS2,
Ubuntu Linux, i686, 8 core - Platform - BES Client
6ARC features
- Standards compliant WS interfaces.
- Modular architecture.
- Core components for job execution (AREX),
information exchange (ISIS), data storage
(Chelonia), and security. - Broad range of supported platforms.
- Straightforward user interfaces.
- Developer friendliness, supports services in
Java, Python and C. - Supports IPv6.
Thanks to Peter Stefan
7Job Execution Client and Server
- The client
- Modular library CLI tools.
- Allows grid users accessing different middleware
operated grid services gLite CREAM2, Unicore,
pre-WS ARC. - Available on MS Windows, MacOS X, Solaris and
Linux.
- The server
- Implements a CE.
- Supports BES/JSDL/GLUE2 with ARC extensions.
- Conforms to numerous LRMSes.
Thanks to Peter Stefan
8Genesis II Standards Based Grid Implementation
- Users FIRST!
- Design the system from the ground up with the
overriding mantra that users come first! - Users dont want to know about grids
- Provide a secure, cohesive system in a production
system available to users today! - Provide an open source, reference implementation
of the OGSA and OGSA-related specifications - Use standards and proto-standards available from
the OGF and OGSA to provide feedback into the OGF
process on various standards based on
implementation experience
Thanks to Mark Morgan
9(Most) everything is a file or directory
- Files and directories can be accessed without
knowing anything about Grids, Web Services, or
anything thanks to FUSE/IFS - FUSE/IFS map the Grid into the file system
- BES resources, queues are directories
- ls to list the jobs, cat a job to see its
state - cp a JSDL file into the directory -gt start the
job up - A shell script can start jobs by copying
- Genesis II containers are directories
- ls to see the services and porttypes
- IDP are files/directories
- ISs are directories
- cp a query file to IS, creates result
- RDBMSs will be directories
- The user can access all of these services without
dealing with Web Services!!
Thanks to Mark Morgan
10GridSAM Use Characteristics
- Currently deployed and used (amongst others)
- On UK National Grid Service (NGS)
- University College London and Imperial College
London (numerous projects) - Open Geospatial Consortium (OGC)
- 2 deployments within Chinese automotive industry
- Chinese Drug Discovery project
- Southampton University
- Characteristics
- Easily installed and configured
- Client install on Windows, Mac OS X and Linux
- Server install on many popular Linux variants
- Supports PBS, DRMAA, Sun GridEngine, Condor,
Globus, LSF batch systems - Standards-based HPC Basic Profile v1.0, OGSA-BES
v1.0, JSDL v1.0, HPC File Staging Profile
(partial) - Supports FTP, SFTP, HTTP, HTTPs, GridFTP, WebDav
data protocols - User-focused development and Open Source
Thanks to Steve Crouch
11Open Community Development
- GridSAM is Open Source, Open Community
Development - GridSAM SourceForge project
- 99.03 activity, 1 release/month
- SVN source code repository
- Developer discuss mailing lists
- Contribute!
http//sourceforge.net/projects/gridsam/
Thanks to Steve Crouch
12Availability and Future Developments
- Availability
- SourceForge gridsam project
- With bundled Apache Tomcat/Axis/WSS4j
(WS-Security) - OMII-UK Campus Grid Toolkit (CGT) automated
client or server install - OMII-UK Development Kit heavily assisted client
or server installation - Future Developments
- For end-users
- Refactored documentation (with improved OGF
standards coverage) - Full support for HPC File Staging Profile across
PBS, Condor Fork DRMs - Full support for JSDL Resource selection across
PBS, Condor Fork DRMs - JSDL Parameter Sweep Extension
- Support for SRB and iRODS
- For resource owners
- Packaging as standalone, manually configurable
web archive (WAR) file - Job submission through multiple remote SSH
accounts
Thanks to Steve Crouch
13Grid driving High Performance Computing (HPC)
- UNICORE used in
- DEISA (European Distributed Supercomputing
Infrastructure) - National German Supercomputing Center NIC
- Gauss Center for Supercomputing (Alliance of the
three German HPC centers official National Grid
Initiative for Germany in the context of EGI) - SKIF-Grid (Russion-Belarus HPC Infrastructure)
- PRACE (European PetaFlop HPC Infrastructure)
starting-up - Traditionally taking up major requirements from
i.e. - HPC users (i.e. MPI, OpenMP)
- HPC user support teams
- HPC operations teams
- and via SourceForge Platform
Thanks to Morris Riedel
14Guiding Principles, Implementation Strategies
- Open source under BSD license with software
hosted on SourceForge - Standards-based OGSA-conform, WS-RF 1.2
compliant, adoption and driving of various Open
Grid Forum (OGF) standards - Open, extensible Service-Oriented Architecture
(SOA) - Interoperable with other Grid technologies
- Seamless, secure and intuitive following a
vertical end-to-end approach - Mature Security X.509, proxy and VO support
- Workflow support tightly integrated while being
extensible for different workflow languages and
engines for domain-specific usage - Application integration mechanisms on the client,
services and resource level - Variety of clients graphical, command-line, API,
portal, etc. - Quick and simple installation and configuration
- Support for many operating systems (Windows,
MacOS, Linux, UNIX) and batch systems
(LoadLeveler, Torque, SLURM, LSF, OpenCCS) - Implemented in Java to achieve platform-independen
ce
Thanks to Morris Riedel
15scientific clientsand applications
UCCcommand-line client
URCEclipse-based Rich client
HiLAProgrammingAPI
Portal e.g. GridSphere
X.509, Proxies, SOAP, WS-RF, WS-I, JSDL
web service stack
Gateway
central services running in WS-RF hosting
environments
ServiceRegistry
WorkflowEngine
OGSA-RUS, UR,GLUE 2.0
ServiceOrchestrator
CISInfoService
Gateway Site 1
Gateway Site 2
authentication
UNICOREWS-RFhostingenvironment
OGSA-ByteIO, OGSA-BES, JSDL, HPC-BP, OGSA-RUS, UR
UNICOREWS-RFhostingenvironment
UNICORE Atomic Services
OGSA-
UVOSVO Service
UNICORE Atomic Services
OGSA-
Grid services hosting
XNJS Site 1
XNJS Site 2
IDB
IDB
job incarnation
X.509, XACML, SAML, Proxies
XACML entity
XACML entity
XUUDB
XUUDB
authorization
Target System Interface Site 1
Target System Interface Site 2
DRMAA
ExternalStorage
GridFTP, Proxies
USpace
USpace
data transfer to external storages
http//www.unicore.eu
Thanks to Morris Riedel
16Challenges
- Time - 4 days to do core work
- Learning curve middlewares, demo requirements
- Impacted many decisions, compromise!
- Select best time/benefit approach
- Good team coordination, high communication
critical - Exploitation of standards support for each
middleware probably not complete! - Compatibility of BES client and middleware
- Client has some limitations e.g. no delegation
support (ARC), no support for full EPRs (Genesis
II) - Middleware support for standards and data
differs how to support? - Approach was hybrid of highest common
denominator of support, and customisation - JSDL generate middleware-oriented rendering
based on template - Data use what we could get working for each
middleware - Support for full EPRs was blocker for Genesis II
17Standards/Data Protocols/Security Supported in
Demo (at the moment!)
- Standards
- HPC Basic Profile v1.0
- OGSA BES (Basic Execution Service) v1.0
- JSDL (Job Submission Description Language) v1.0
- HPC Profile Application Extension v1.0 ARC,
GridSAM - HPC File Staging Profile UNICORE only
- Data protocols
- UNICORE, ARC ftp
- GridSAM GridFTP
- Security
- Direct middleware -gt certificate CA trust (just
import CAs)
18Compute Related Standards
Architecture OGSA EMS Scenarios (GFD 106)
Use Cases Grid Scheduling Use Cases (GFD 64)
Education ISV Primer (GFD 141)
Agreement WS-Agreement (GFD 107)
Programming Interface SAGA (GFD 90)
Uses
Programming Interface DRMAA (GFD 22/133)
Accounting Usage Record (GFD 98)
Supports
Produces
Job Management OGSA-BES (GFD 108)
Information GLUE Schema 2.0 (GFD. 147)
Describes
Profiles
HPC Domain Specific Profile HPC Basic
Profile (GFD 114)
19Compute Related Standards
Architecture OGSA EMS Scenarios (GFD 106)
Use Cases Grid Scheduling Use Cases (GFD 64)
Education ISV Primer (GFD 141)
Agreement WS-Agreement (GFD 107)
Job Definition
Programming Interface SAGA (GFD 90)
Job Description JSDL (GFD 56/136)
Uses
Programming Interface DRMAA (GFD 22/133)
Accounting Usage Record (GFD 98)
Application Description HPC Application (GFD 111)
Supports
Produces
Application Description SPMD Application (GFD
115)
Extend
Job Management OGSA-BES (GFD 108)
Job Parameterization Parameter Sweep (GFD. 149)
Information GLUE Schema 2.0 (GFD. 147)
Describes
Profiles
File Transfer HPC File Staging (GFD 135)
HPC Domain Specific Profile HPC Basic
Profile (GFD 114)
20JSDL Template
ltJobDefinition xmlns"http//schemas.ggf.org/jsdl/
2005/11/jsdl"gt ltJobDescriptiongt
ltApplicationgt lt_at_APPLICATION_TYPE_at_
xmlns"_at_APPLICATION_TYPE_NAMESPACE_at_"gt
ltExecutablegt_at_MINEM_INSTALL_LOCATION_at_/update_fi
lelt/Executablegt
ltArgumentgtinput.txtlt/Argumentgt
ltArgumentgtoutput.txtlt/Argumentgt
ltOutputgtstdout.txtlt/Outputgt
ltErrorgtstderr.txtlt/Errorgt
_at_OPTIONAL_WORKING_DIR_ELEMENT_at_
lt/_at_APPLICATION_TYPE_at_gt lt/Applicationgt
ltDataStaginggt ltFileNamegtinput.txtlt
/FileNamegt ltCreationFlaggtoverwritelt/Cr
eationFlaggt ltSourcegt
ltURIgt_at_INPUT_FILE_URI_at_lt/URIgt
lt/Sourcegt _at_OPTIONAL_HPCFSP_CREDENTIAL_at_
lt/DataStaginggt ltDataStaginggt
ltFileNamegtoutput.txtlt/FileNamegt
ltCreationFlaggtoverwritelt/CreationFlaggt
ltDeleteOnTerminationgtfalselt/DeleteOnTermination
gt ltTargetgt
ltURIgt_at_OUTPUT_FILE_URI_at_lt/URIgt
lt/Targetgt _at_OPTIONAL_HPCFSP_CREDENTIAL_at_
lt/DataStaginggt
ltDataStaginggt ltFileNamegtstdout.txtlt/F
ileNamegt ltCreationFlaggtoverwritelt/Crea
tionFlaggt ltDeleteOnTerminationgtfalselt/
DeleteOnTerminationgt ltTargetgt
ltURIgt_at_STDOUT_FILE_URI_at_lt/URIgt
lt/Targetgt _at_OPTIONAL_HPCFSP_CREDENTIAL_at_
lt/DataStaginggt ltDataStaginggt
ltFileNamegtstderr.txtlt/FileNamegt
ltCreationFlaggtoverwritelt/CreationFlaggt
ltDeleteOnTerminationgtfalselt/DeleteOnTermination
gt ltTargetgt
ltURIgt_at_STDERR_FILE_URI_at_lt/URIgt
lt/Targetgt _at_OPTIONAL_HPCFSP_CREDENTIAL_at_
lt/DataStaginggt lt/JobDescriptiongt
_at_OPTIONAL_MYPROXY_ELEMENT_at_ lt/JobDefinitiongt
21How it Fits Together
Minem
UNICORE
Minem
minem-interop.pl
FTP
MyProxy
BES Client
GridSAM
Minem
GridFTP
FTP
ARC
Minem
22Future
- Support full EPRs for Genesis II
- Include CREAM-BES within interop demo
- Harmonise standards support across all
middlewares - HPC Basic Profile Application Extension
(currently supported by GridSAM, ARC) - HPC File Staging Profile (currently supported by
UNICORE) - This would need middleware development!
- Support for single data protocol across all
middlewares? - HPC File Staging Profile only mandates support
for one protocol from ftp, http, scp (does not
mandate a specific one, or all three) - Issues with each e.g. GridFTP would need support
in Genesis II, production-level support in
UNICORE, and delegation support in BES client
for ARC - Again, middleware development required!
- We already know data is a next big Grid
challenge protocol support a key part of this
challenge
23Thanks
- Demo development Steve Crouch, OMII-UK
- Core Interop assistance
- ARC
- Peter Stefan - NorduGrid
- Genesis 2
- Mark Morgan - UVa
- GridSAM
- Justin Bradley OMII-UK
- Richard Boardman OMII-UK
- UNICORE
- Shahbaz Memon Juelich
- BES
- Chris Smith - Platform
- Resource provision
- Andrew Grimshaw - UVa
- Balazs Konya - NorduGrid
- Matteo Turilli UK NGS
- Morris Riedel Juelich