810 likes | 1.03k Views
Grid Computing Concepts: Theory and Practice. -Mahantesh Halappanavar Grid Computing Systems Engineer, Research Computing, Office of Computing and Communications Services (OCCS) Old Dominion University.
E N D
Grid Computing Concepts:Theory and Practice -Mahantesh Halappanavar Grid Computing Systems Engineer, Research Computing, Office of Computing and Communications Services (OCCS) Old Dominion University A note of Plagiarism I have extensively borrowed from books and presentations by others. Sources, wherever possible, are indicated on the individual slides.
My Perspective: Traditional High Performance Computing Concepts Traditional Distributed Computing Concepts The Grid Computing Applications Basics Globus Toolkit Practice
A Real-life Problem • The Large Hadron Collider (LHC) Project • Will produce 15 Petabytes per year • Will need 100,000 of today’s processors for processing data • Involves 200 sites in over 30 countries
Traditional High Performance Computing Concepts Traditional Distributed Computing Concepts The Grid Computing Applications Basics Globus Toolkit Practice
Traditional Distributed Computing Challenges Models Components
Challenges • Heterogeneity (h/w, s/w, models) • Openness (standards) • Security • Scalability • Failure handling (detecting, masking, tolerating, replication, recovery) • Concurrency (synchronization, consistency) • Transparency (access, location, failure, performance, scaling)
Layered Abstraction Applications, Services Middleware Operating System Platform Computer and Network h/w
Traditional Paradigms for DC CORBA DCOM Java RMI RPC Socket Programming TCP/IP Network
Enter Web Services • Web service is a open standard for developing server-side components that can be described, published, discovered and invoked. • Base model for Microsoft’s .NET framework, IBM’s e-business strategy, etc. • Simple open standards like XML and HTTP • Core standards: SOAP, WSDL, and UDDI and WSIL
Web Services Web Services CORBA DCOM Java RMI RPC Socket Programming TCP/IP Network
Simple Object Access Protocol (SOAP) • Simple and lightweight communication protocol that enables communication between clients and servers in XML format over transport-level protocol (HTTP) SOAP Envelope SOAP Header SOAP Body
Web Service Description Language (WSDL) Service • XML-based specification to describe a service • Binding: SOAP over HTTP is the most common mechanism Port Port Type Operation A Messages (i/o, o/p) Operation B Messages (i/o, o/p) Binding A Binding B
The Interaction: UDDI Registry Service discovery with SOAP Service WSDL registration with SOAP Service WSDL Service response with SOAP Client Service Service request with SOAP
Traditional High Performance Computing Concepts Traditional Distributed Computing Concepts The Grid Computing Applications Basics Globus Toolkit Practice
Traditional High Performance Computing Challenges Models Trends
Design Challenges • Communication abstraction • Programming model requirements • Naming (address space) • Operations • Ordering (mutual exclusion, events) • Communication and Replication • Performance • Latency, Bandwidth and Cost
CAD Database Scientific modeling Parallel applications Multipr ogramming Shar ed Message Data Pr ogramming models addr ess passing parallel Compilation Communication abstraction or library User/system boundary Operating systems support Har dwar e/softwar e boundary Communication har dwar e Physical communication medium Layered Abstraction
Flynn’s Taxonomy Few Vector Machines 1 instruction stream Many data streams PCs 1 instruction stream 1 data stream Clusters, etc Many instruction streams Many data streams Theoretical Many instruction streams 1 data stream
Memory Models Distributed Memory (NUMA, CCNUMA) Shared Memory (SMP, UMA) Memory Memory Memory CPU CPU CPU CPU CPU CPU Memory CPU CPU CPU CPU CPU CPU Memory Memory Memory Message Passing Multi-threading
Message Passing • Point-to-Point • Send and Receive • Collective • Barrier (wait until all respond) • Broadcast/Gather/Scatter/All-to-All • Software Standard: MPI-1, MPI-2 • MPICH, LAM/MPI, etc.
An Analogy of Electric Grids What is the difference? IT Grid can provide the whole service
Grid Computing In A Nutshell • Resource sharing and coordinated problem solving in dynamic, multi-institutional virtual organization set-up
Types of grids • Computational grid • Focused on computing power • Where most machines are high-performance servers • Scavenging grid • Large numbers of desktop machines scavenged for available CPU cycles and other resources • Owners of the desktop machines control their resources • Data grid • Houses and providing access to data across multiple organizations • Data transparency
Challenges • The Nature of Applications • Programming Models and Tools • System Architecture • Algorithms and Problem-Solving Methods • Resource Management • Security • Instrumentation and Performance Analysis • End Systems • Network Protocols and Infrastructure
Applications of Grid Computing Applications
A few Applications • Physics (High energy, Plasma, Astro, Geophysical ) • Intelligence/Defense • Climate Prediction • Computational Biology and Bioinfomatics • Health and Safety (AIDS, Cancer) • Nanotechnology and Material Science • Behavior prediction/modeling
Large Hadron Collider Project • Will produce 15 Petabytes per year • Will need 100,000 of today’s processors for processing data • Involves 200 sites in over 30 countries
Search For Extra-terrestrial Intelligence (SETI@home) Avg: 72 Tflop/s
Storms Forming Forecast Model Data Mining On-Demand Grid Computing Optimal Weather Prediction Using Dynamic Adaptivity Streaming Observations Linked Environments forAtmospheric Discovery
Grid Computing Basic Concepts
Virtual Organizations • Non-hierarchical: Chaotic analyses + productions • Superimpose significant random data flows
Components: The 3 Pillars Global Grid Connectivity Using Globus Toolkit With Solaris Operating System By Sun Microsystems. Article is provided courtesy of Prentice Hall PTR. Date: Jun 25, 2004.
The Goals • The 3 As: • Authentication: Prove I am who I say I am • Authorization: What can I do? • Accounting: Keep track of actions • Non-repudiation: cannot deny actions