Parallel Computing Globus Toolkit – Grid Ayaka Ohira
Overview Grid computing Globus toolkit GT4 architecture GT4 projects How to run a simple program
Grid computing “A Grid is a system that coordinates resources that are not subject to centralized control using standard, open, general-purpose protocols and interfaces to deliver nontrivial qualities of service.” - Ian Foster A kind of distributed computing Enables large scale calculations and simulations. %20computing_kl_tcm jpg
Globus Toolkit Developed by Globus Allience De facto standard for grid computing Open source Heterogeneous A set of software and services to solve general grid problems.
Globus toolkit 1998: Globus toolkit version : Globus toolkit : Globus toolkit : Globus toolkit 4
Globus Toolkit 4 (GT4) Extensive use of Web Services Web Services are flexible, loosely coupled and platform and language independent Based on OGSA standard Implemented on Web Service Resource Framework (WSRF)
WSRF specification WS-ResourceProperties WS-ResourceLifetime WS-ServiceGroup WS-BaseFaults WS-Notification WS-Addressing
GT4 architecture
Common runtime components (C WS Core) Provide a set of libraries and tools that allows services to be platform independent Tested platforms for C WS Core: IA32/Linux/gcc32 IA64/Linux/gcc64 x86_64/Linux/gcc64 SPARC/Solaris 9/vendorcc32 PowerPC/AIX 5.2/vendorcc32 Mac/OS X/gcc32
Security Grid Security Infrastructure (GSI) Provides fundamental security services needed to support grids Message-level security X.509 (Public Key Cryptography) Transport-level security HTTPS (Hyper Text Transport Protocol Secure)
Data Management Manages data movement and replication Data transfer: GridFTP Reliable File Transfer (RFT) Data replication Replica Location Service (RLS)
Information Services Monitoring and Discovery Service (MDS4) Enable projects to discover needed data from services to make job submission Index service Trigger service
Execution Management Grid Resource Allocation Management (GRAM) Provides secure, reliable and sound job execution services Enables users to locate, submit, monitor and cancel remote jobs on Grid-based compute resources Not a job scheduler!
Globus toolkit advantage Why is the globus toolkit de facto standard? It is not a solution to grid computing.
Grid projects using GT4 NASA Information Power Grid Earth System Grid TeraGrid Laser Interferometer Gravitational Wave Observatory (LIGO) project Open Science Grid Cancer Bioinformatics Grid UK National Grid Service China Grid
Common steps to submit a job Install and configure a grid 1.Start Globus Toolkit 2.Write RSL (Resource Specification Language) for your program 3.Submit a job
Common steps to submit a job...cont Start Globus toolkit /etc/init.d/globus start RSL file example /your/directory/name hello hello.out hello.err
Submit the job globusrun-ws –submit –F [protocol://]{hostname|hostaddr}[:port][/service] -f yourrslfile.rsl Copy a file from a remote server globus-url-copy gsiftp://remote.host.edu/path/to/file file://path/on/local/host Common steps to submit a job...cont
Hello world using MPICH-G2 #include int main(int argc, char **argv) { #if defined(GLOBUS_CALLBACK_GLOBAL_SPACE) globus_module_set_args(&argc, &argv); #endif globus_module_activate(GLOBUS_DUROC_RUNTIME_MODULE); globus_duroc_runtime_barrier(); globus_module_deactivate(GLOBUS_DUROC_RUNTIME_MODULE); printf("hello, world\n"); }
Further readings Tutorial on how to set up GT4 using PBS and SGE job scheduler MPICH-G2 website Globus allience official website
Thank you Questions?