© 2006 Open Grid Forum OGF HPC-Basic Profile Application Interoperability Demonstration GIN-CG
© 2006 Open Grid Forum Overview Application Standards Implementations Demo Future
© 2006 Open Grid Forum Scientific Application
© 2006 Open Grid Forum Plasma 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
© 2006 Open Grid Forum Participation 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
© 2006 Open Grid Forum ARC 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
© 2006 Open Grid Forum Job 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
© 2006 Open Grid Forum Genesis II – Standards Based Grid Implementation Users FIRST! Design the system from the ground up with the overriding mantra that users come first! Users don’t 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 Genesis II “Open Source, OGSA Implementation” Thanks to Mark Morgan
© 2006 Open Grid Forum (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 -> 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 IS’s are directories “cp” a query file to IS, creates result RDBMS’s will be directories The user can access all of these services without dealing with Web Services!! Genesis II “Open Source, OGSA Implementation” Thanks to Mark Morgan
© 2006 Open Grid Forum GridSAM – 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
© 2006 Open Grid Forum Open 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! t/projects/gridsam/ Thanks to Steve Crouch
© 2006 Open Grid Forum Availability 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
© 2006 Open Grid Forum 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 Grid driving High Performance Computing () Grid driving High Performance Computing (HPC) Thanks to Morris Riedel
© 2006 Open Grid Forum Guiding 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-independence Thanks to Morris Riedel
UNICORE WS-RF hosting environment XNJS – Site 1 IDB UNICORE Atomic Services OGSA-* Service Registry Local RMS (e.g. Torque, LL, LSF, etc.) Target System Interface – Site 1 Local RMS (e.g. Torque, LL, LSF, etc.) X.509, Proxies, SOAP, WS-RF, WS-I, JSDL OGSA-ByteIO, OGSA-BES, JSDL, HPC-BP, OGSA-RUS, UR X.509, XACML, SAML, Proxies DRMAA UCC command- line client URC Eclipse-based Rich client Portal e.g. GridSphere HiLA Programming API Gateway – Site 1 UVOS VO Service External Storage USpace GridFTP, Proxies USpace XUUDB Workflow Engine Service Orchestrator XACML entity UNICORE WS-RF hosting environment XNJS – Site 2 IDB UNICORE Atomic Services OGSA-* Target System Interface – Site 2 XUUDB XACML entity Gateway – Site 2 CIS Info Service OGSA-RUS, UR, GLUE 2.0 Grid services hosting job incarnation web service stack data transfer to external storages authorization authentication scientific clients and applications central services running in WS-RF hosting environments Gateway Thanks to Morris Riedel
© 2006 Open Grid Forum Challenges 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
© 2006 Open Grid Forum Standards/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 -> certificate CA trust (just import CAs)
© 2006 Open Grid Forum Compute Related Standards Job Management OGSA-BES (GFD 108) HPC Domain Specific Profile HPC Basic Profile (GFD 114) 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 DRMAA (GFD 22/133) Programming Interface SAGA (GFD 90) Accounting Usage Record (GFD 98) Information GLUE Schema 2.0 (GFD. 147) Job Definition File Transfer HPC File Staging (GFD 135) Job Description JSDL (GFD 56/136) Application Description HPC Application (GFD 111) Application Description SPMD Application (GFD 115) Job Parameterization Parameter Sweep (GFD. 149) Extend Uses Produces Describes Supports Profiles
© 2006 Open Grid Forum Compute Related Standards Job Management OGSA-BES (GFD 108) HPC Domain Specific Profile HPC Basic Profile (GFD 114) 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 DRMAA (GFD 22/133) Programming Interface SAGA (GFD 90) Accounting Usage Record (GFD 98) Information GLUE Schema 2.0 (GFD. 147) Job Definition File Transfer HPC File Staging (GFD 135) Job Description JSDL (GFD 56/136) Application Description HPC Application (GFD 111) Application Description SPMD Application (GFD 115) Job Parameterization Parameter Sweep (GFD. 149) Extend Uses Produces Describes Supports Profiles
JSDL Template e input.txt output.txt stdout.txt stderr.txt input.txt overwrite output.txt overwrite false stdout.txt overwrite false stderr.txt overwrite false
3. Upload input files 3 How it Fits Together… BES++ Client BES++ Client UNICORE GridSAM ARC FTP GridFTP FTP Client Job Service Data Service Minem Application minem- interop.pl MyProxy Minem Security Service 1. Create Minem input files 1 2. Generate JSDLs from template 2 4. Submit JSDLs across middlewares 4 6. Download input files 6 7. Select best result 7 8. Generate/upload image to web server 8 5. Monitor jobs until completion 5
© 2006 Open Grid Forum Future 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
© 2006 Open Grid Forum Thanks 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