26-03-2011, 09:24 AM
presented by:
Faisal N. Abu-Khzam
&
Michael A. Langston
[attachment=11022]
GRID COMPUTING
What is Grid Computing?
Computational Grids
– Homogeneous (e.g., Clusters)
– Heterogeneous (e.g., with one-of-a-kind instruments)
Cousins of Grid Computing
Methods of Grid Computing
Computational Grids
A network of geographically distributed resources including computers, peripherals, switches, instruments, and data.
Each user should have a single login account to access all resources.
Resources may be owned by diverse organizations.
Computational Grids
Grids are typically managed by gridware.
Gridware can be viewed as a special type of middleware that enable sharing and manage grid components based on user requirements and resource attributes (e.g., capacity, performance, availability…)
Cousins of Grid Computing
Parallel Computing
Distributed Computing
Peer-to-Peer Computing
Many others: Cluster Computing, Network Computing, Client/Server Computing, Internet Computing, etc...
Distributed Computing
People often ask: Is Grid Computing a fancy new name for the concept of distributed computing?
In general, the answer is “no.” Distributed Computing is most often concerned with distributing the load of a program across two or more processes.
PEER2PEER Computing
Sharing of computer resources and services by direct exchange between systems.
Computers can act as clients or servers depending on what role is most efficient for the network.
Methods of Grid Computing
Distributed Supercomputing
High-Throughput Computing
On-Demand Computing
Data-Intensive Computing
Collaborative Computing
Logistical Networking
Distributed Supercomputing
Combining multiple high-capacity resources on a computational grid into a single, virtual distributed supercomputer.
Tackle problems that cannot be solved on a single system.
High-Throughput Computing
Uses the grid to schedule large numbers of loosely coupled or independent tasks, with the goal of putting unused processor cycles to work.
On-Demand Computing
Uses grid capabilities to meet short-term requirements for resources that are not locally accessible.
Models real-time computing demands.
Data-Intensive Computing
The focus is on synthesizing new information from data that is maintained in geographically distributed repositories, digital libraries, and databases.
Particularly useful for distributed data mining.
Collaborative Computing
Concerned primarily with enabling and enhancing human-to-human interactions.
Applications are often structured in terms of a virtual shared space.
Logistical Networking
Global scheduling and optimization of data movement.
Contrasts with traditional networking, which does not explicitly model storage resources in the network.
Called "logistical" because of the analogy it bears with the systems of warehouses, depots, and distribution channels.
Who Needs Grid Computing?
A chemist may utilize hundreds of processors to screen thousands of compounds per hour.
Teams of engineers worldwide pool resources to analyze terabytes of structural data.
Meteorologists seek to visualize and analyze petabytes of climate data with enormous computational demands.
An Illustrative Example
Tiffany Moisan, a NASA research scientist, collected microbiological samples in the tidewaters around Wallops Island, Virginia.
She needed the high-performance microscope located at the National Center for Microscopy and Imaging Research (NCMIR), University of California, San Diego.
She sent the samples to San Diego and used NPACI’s Telescience Grid and NASA’s Information Power Grid (IPG) to view and control the output of the microscope from her desk on Wallops Island. Thus, in addition to viewing the samples, she could move the platform holding them and make adjustments to the microscope.
The microscope produced a huge dataset of images.
This dataset was stored using a storage resource broker on NASA’s IPG.
Moisan was able to run algorithms on this very dataset while watching the results in real time.
Grid Users
Grid developers
Tool developers
Application developers
End Users
System Administrators
Grid Developers
Very small group.
Implementers of a grid “protocol” who provides the basic services required to construct a grid.
Tool Developers
Implement the programming models used by application developers.
Implement basic services similar to conventional computing services:
– User authentication/authorization
– Process management
– Data access and communication
Tool Developers
Also implement new (grid) services such as:
– Resource locations
– Fault detection
– Security
– Electronic payment
Application Developers
Construct grid-enabled applications for end-users who should be able to use these applications without concern for the underlying grid.
Provide programming models that are appropriate for grid environments and services that programmers can rely on when developing (higher-level) applications.
System Administrators
Balance local and global concerns.
Manage grid components and infrastructure.
Some tasks still not well delineated due to the high degree of sharing required.
Some Highly-Visible Grids
The NSF PACI/NCSA Alliance Grid.
The NSF PACI/SDSC NPACI Grid.
The NASA Information Power Grid (IPG).
The Distributed Terascale Facility (DTF) Project.
DTF
Currently being built by NSF’s Partnerships for Advanced Computational Infrastructure (PACI)
A collaboration: NCSA, SDSC, Argonne, and Caltech will work in conjunction with IBM, Intel, Quest Communications, Myricom, Sun Microsystems, and Oracle.
DTF Expectations
A 40-billion-bits-per-second optical network (Called TeraGrid) is to page link computers, visualization systems, and data at four sites.
Performs 11.6 trillion calculations per second.
Stores more than 450 trillion bytes of data.