Title: MetaComputing
1MetaComputing
CEG 4183
- Benson Chan 1813283
- Michel Chicoine 1744063
This report was prepared for Professor L.
Orozco-Barbosa in partial fulfillment of the
requirements for the course ELG/CEG 4183
2Introduction
3Motivation
- Under-utilized powerful workstations around the
world - Unused processor cycles and resources
- Supercomputers are expensive
- Faster networks
4MetaComputing
- Network of computers that are separated
geographically to perform computations.
(Metasystem) - Transparent distribution of the workload
- High-speed networks used to connect
supercomputers, database servers, devices.
5MetaComputing Issues
- Transparency
- Use of standard cross platform language for
heterogeneous systems - Synchronization and Scheduling
- Temporal management of resources
- Load Balancing
- Spread tasks among parallel resources
- Security and robustness
- Protect unauthorized use of the resources and
ensure availability of the resources. (Policy)
6Parallel Architectures
- SIMD
- MIMD Shared Memory
- MIMD Distributed Memory
7MIMD Shared Memory
8MIMD Distributed Memory
9Programming Models
- Message Passing
- PVM
- MPI
- PVMPI
- Client/Server
- Code Shipping
- Proxy Computing
- Intelligent Mobile Agents
10MPI
- Designed for High Performance Message Passing for
Clusters and SuperComputers - Two standards 1.1 and 2.0 can be found at
- http//www-unix.mcs.anl.gov/mpi/
11Coding Example
include "mpi.h"
main( argc, argv )
int argc
char argv
char message20
int myrank
MPI_Status status
MPI_Init( argc, argv )
MPI_Comm_rank( MPI_COMM_WORLD, myrank )
if (myrank 0) / code for process zero
/
strcpy(message,"Hello, there")
MPI_Send(message, strlen(message),
MPI_CHAR, 1, 99, MPI_COMM_WORLD)
else / code for process one
/
MPI_Recv(message, 20, MPI_CHAR, 0, 99,
MPI_COMM_WORLD, status)
printf("received s\n", message)
MPI_Finalize()
12Distributed System Support
13Network Support
Source Metacomputing The Informal
Supercomputer, Mark Baker and Geoffrey Fox
3/11/2002
14Resource Management Issues
- Site autonomy
- Resources operated and administered by
different parties with different policies, - security mechanisms, etc.
- Heterogeneous substrate
- Derived from site autonomydifferent resources
use different resource management schemes - Policy extensibility
- Need to easily support changes/additions of
new policies for different domains - Co-allocation
- Need for mechanism to co-ordinate/manage
computations on different resources - Online control
- Need to handle negotiation of resource
requirements and availability
15Resource Management Approach
- Network Batch Queuing Systems
- Designed for single domains (no site autonomy)
- Resource management policy set by user (no policy
extensibility)
16Present Applications
- Areas
- 1-Distributed supercomputing
- 2-On-demand computing
- 3-High-throughput computing
- 4-Collaborative computing
- 5-Data-intensive computing
- Examples Virtual Laboratory GIS
17Research Area Grid Computing
- Globus Project
- Solutions for high-performance, large-scale
resource distributed systems. - Coordinated resource sharing and problem solving
18Future Possibility Web Services
- Linking of web servers to exchange data and
combine information to offer value services
through any Net device - Different languages, different platform
- XML the lingua franca
- Standards SOAP, UDDI, WSDL
- .Net vs. J2EE
-
19Web Service Example
20Summary
- Metacomputing allows the use of the Internet to
increase computing power - Complex architecture issues across platforms and
languages - Basis of the next wave of computing technologies
- Web Services is the next big hype allows
organizations to save system integration costs,
generate new revenue models
21References (contd)
- 1
- Czajkowski, Karl. Foster, Ian. Karonis, Nicholas.
Kesselman, Carl. Martin, Stuart. Smith, Warren.
Tuecke, Steven. Resource Management Architecture
for Metacomputing Systems. Information Sciences
Institute, University of Southern California,
Marina Del Ray CA Mathematics and Computer
Science Division, Argonne National Library,
Argonne IL. - 2
- Kacsuk, Peter. Vajda, Ferenc. Network based
Distributed Computing (Metacomputing). ERCIM
1999. http//www.ercim.org/publication/prosp/NdBC.
pdf - 3
- Foster, Ian. Kesselman, Carl. Tuecke, Steven.
Anatomy of the Grid Enabling Scalable Virtual
Organizations. ttp//www.globus.org/research/paper
s/anatomy.pdf
22References (contd)
- 4
- Wolter, Roger. XML Web Services Basics. Microsoft
Developer Network, Microsoft Corporation.
December 2001. http//msdn.microsoft.com/library/d
efault.asp?url/library/en-us/dnwebsrv/html/webser
vbasics.asp - 5
- Wong, Wylie. Kane, Margaret. Ricciuti, Mike. The
New Buzz Web Services try to rise above din.
CNet News.com, November 8 2001.
http//news.com.com/2009-1017-275484.html?legacyc
net - 6
- Message Passing Interface Standard. Message
Passing Interface Forum. - http//www.mpi-forum.org/docs/mpi-11-html/mpi-repo
rt.html
23References (contd)
- 7
- Baker, Mark. Fox, Geoffrey. Metacomputing The
Informal Supercomputer Northeast Parallel
Architectures Center, Syracuse University,
Syracuse NY. - http//www.npac.syr.edu/users/mab/homepage/C
ornell/lecture1/Slide-Show/ - 8
- Webb, Daren. Wendelborn, Andrew. Maciunas, Kevin.
Process Networks as a High Level Notation for
MetaComputing. Department of Computer Science,
University of Adelaide. Adelaide, Australia.
http//ipdps.eece.unm.edu/1999/java/webb.pdf
24Q A
25Study Questions
- 1)What is the communication language of
- Web Services? XML
- 2)T/F? MetaComputing environments are within
- the same geographic location F
- 3)What is a cluster? A collection of PCs
- and workstations.
- 4)What is the Microsoft-proprietary distributed
- architecture called? DCOM
26Study Questions (contd)
5) What is the difference between MIMD with
shared memory and distributed memory?
Shared memory is a scheme which all processors of
the MetaComputing environment share one
source of memory (they are assigned a share
of the central memory) whereas in
Distributed Memory, each processor has its
own memory at its own physical location.