Learning Center
Plans & pricing Sign in
Sign Out

EGTOGET Seminar Topics Seminar Report On CLUSTER COMPUTING Prepared By 1 Introduction


									            Seminar Report On

Prepared By :
1. Introduction
2. History
3. Clusters
4. Why Clusters?
5. Logical view of Clusters
6. Architecture
7. Components of Cluster Computer
8. Cluster Classifications
9. Cluster Applications
10. Future Trends
11. Comparison - Cluster and Grid
-Computing is an evolutionary process.
-Computing requirements driven by applications have always outpaced the
available technology.
-The parallel and distributed computing concept has been with us for over three
decades, the high cost of multiprocessor systems has blocked commercial
success so far.
-Today even a single processor PCs and workstations now can provide extremely
fast processing.
-Networked clusters of commodity PCs and workstations using off-the-shelf
processors and communication platforms such as Myrinet , Fast Ethernet, and
Gigabit Ethernet are becoming increasingly cost effective and popular. This
concept, known as cluster computing.
-Clusters can provide enormous computing power that a pool of users can share
or that can be collectively used to solve a single application .
-Clusters, built using commodity-off-the-shelf (COTS) hardware components
and free, or commonly used, software, are playing a major role in solving large-
scale science, engineering, and commercial applications.
-Cluster computing has emerged as a result of the convergence of several trends.
- Made possible by inexpensive high performance cheap microprocessors and
high speed networks, the development of standard software .
                  CLUSTER HISTORY
-The first commodity clustering product was ARCnet, developed by
Datapoint in 1977, it was not a commercial success.
-DEC released their VAXcluster product in the 1980s for the VAX/VMS
operating system.
- The ARCnet and VAXcluster products not only supported parallel
computing, but also shared file systems and peripheral devices.
-They give advantage of parallel processing while maintaining data
reliability and uniqueness.
-VAXcluster, now VMScluster, is still available on OpenVMS systems
from HP running on Alpha and Itanium systems.
-The history of cluster computing is intimately tied up with the evolution
of networking technology.
- As networking technology has become cheaper and faster, cluster
computers have become significantly more attractive.

-Extraordinary technological improvements over the past few years in areas such as
 microprocessors, memory, buses, networks, and software have made it possible to
 assemble groups of inexpensive personal computers and/or workstations into a cost
effective system that functions in concert and posses tremendous processing power.
-A cluster is a group of independent computer systems and thus forms a loosely coupled
multiprocessor system.

Cluster computing concept also poses two pressing research challenges:

1.   A cluster should be a single computing resource and provide a single system image.
     This is in contrast to a distributed system.

2. The supporting operating system and communication Mechanism must be efficient
    enough to remove the performance Bottlenecks.
                          WHY CLUSTERS?
-The question may arise why clusters are designed and built when perfectly good
commercial supercomputers are available on the market.
-Clusters are surprisingly powerful .
-The supercomputer has come to play a larger role in business applications.
-In areas from data mining to fault tolerant performance clustering technology has
become increasingly important.
-Supercomputers is impossible to upgrade.
-They are cheap and easy way to take off-the-shelf components and combine them into
a single supercomputer.
-In some areas of research clusters are actually faster than commercial supercomputer.
-Clusters also have the distinct advantage in that they are simple to build using
components available from hundreds of sources.
-A Beowulf cluster uses multi computer architecture .
-It features a parallel computing system that usually consists of one or more master
nodes and one or more compute nodes, or cluster nodes, interconnected via widely
available network interconnects.
-All of the nodes in a typical Beowulf cluster are commodity systems- PCs,
workstations, or servers-running commodity software such as Linux.
-The master node acts as a server for Network File System (NFS) and as a gateway to
the outside world .
-As an NFS server, the master node provides user file space and other common system
software to the compute nodes via NFS.
-As a gateway, the master node allows users to gain access through it to the compute
-The master node is the only machine that is also connected to the outside world using a
second network interface card (NIC).
-Compute nodes do not need to access machines outside the cluster, nor do machines
outside the cluster need to access compute nodes directly.
-Compute nodes commonly use private IP addresses, such as the or address ranges.
-The sole task of the compute nodes is to execute parallel jobs.
-The compute nodes do not have keyboards, mice, video cards, or monitors.
-All access to the client nodes is provided via remote connections from the
master node .
-From a user’s perspective, a Beowulf cluster appears as a Massively Parallel
Processor (MPP) system.
-The most common methods of using the system are to access the master node
either directly or through Telnet or remote login from personal workstations.
-During the execution, compute nodes use 10 standard message-passing
middleware, such as Message Passing Interface (MPI) and Parallel Virtual
Machine (PVM), to exchange information.
-A cluster is a type of parallel or distributed processing system, which consists of a
collection of interconnected standalone computers cooperatively working together as a
single, integrated computing resource.
A node:
· A single or multiprocessor system with memory, I/O facilities, & OS.
· Generally 2 or more computers (nodes) connected together.
· In a single cabinet, or physically separated & connected via a LAN.
· Appear as a single system to users and applications.
· Provide a cost-effective way to gain features and benefits.

Principle features usually provided by cluster computing:
-The Windows NT Server Edition of the Windows operating system is an example of a
base operating system that has been modified to include architecture that facilitates a
cluster computing environment to be established.
1. Multiple High Performance Computers
a. PCs
b. Workstations
2. State of the art Operating Systems
a. Linux (Beowulf)
b. Microsoft NT (Illinois HPVM)
c. SUN Solaris (Berkeley NOW)
d. HP UX (Illinois - PANDA)
e. OS gluing layers(Berkeley Glunix)
3. High Performance Networks/Switches
a. Ethernet (10Mbps),
b. Fast Ethernet (100Mbps),
c. Gigabit Ethernet (1Gbps)
d. Myrinet (1.2Gbps)
e. Digital Memory Channel
4. Network Interface Card
a. Myrinet has NIC
b. User-level access support
5. Fast Communication Protocols and Services
a. Active Messages (Berkeley)
b. Fast Messages (Illinois)
c. U-net (Cornell)
d. XTP (Virginia)
6. Cluster Middleware
a. Single System Image (SSI)
b. System Availability (SA) Infrastructure
7. Hardware
a. DEC Memory Channel, DSM (Alewife, DASH), SMP Techniques
8. Operating System Kernel/Gluing Layers
a. Solaris MC, Unixware, GLUnix
9. Applications and Subsystems
a. Applications (system management and electronic forms)
b. Runtime systems (software DSM, PFS etc.)
c. Resource management and scheduling software (RMS)
10. Applications
a. Sequential
b. Parallel / Distributed (Cluster-aware app.)
11. Parallel Programming Environments and Tools
a. Threads (PCs, SMPs, NOW..)
b. MPI
c. PVM
d. Software DSMs (Shmem)
e. Compilers
f. RAD (rapid application development tools)
g. Debuggers
h. Performance Analysis Tools
i. Visualization Tools
-There are several types of clusters, each with specific design goals and
functionality.These clusters range from distributed or parallel clusters for computation
intensive or data intensive applications that are used for protein, seismic, or nuclear
modeling to simple load-balanced clusters.

1.High Availability or Failover Clusters:

-These clusters are designed to provide uninterrupted availability of data or
services (typically web services) to the end-user community.
-The purpose of these clusters is to ensure that a single instance of an
application is only ever running on one cluster member at a time.
-When that cluster member is no longer available, the application will failover to
another cluster member.
-If a node fails, the service can be restored without affecting the availability of
the services provided by the cluster.
2. Load Balancing Cluster:

-This type of cluster distributes incomming requests for resources or content
among multiple nodes running the same programs or having the same content.
-Every node in the cluster is able to handle requests for the same content or
-If a node fails, requests are redistributed between the remaining available nodes.
-This type of distribution is typically seen in a web-hosting environment.

Both the high availability and load-balancing cluster technologies can be
combined to increase the reliability, availability, and scalability of
application and data resources that are widely deployed for web, mail, news,
or FTP services.
Few important cluster application are:
1.Google Search Engine.
2.Earthquake Simulation.
3.Image Rendering.

1.     Google Search Engine
-Google uses cluster computing to meet the huge quantity of worldwide search requests
  that comprise of a peak of thousands of queries per second.
-A single Google query needs to use at least tens of billions of processing cycles and
 access a few hundred megabytes of data in order to return satisfactory search result.
-Google focuses on 2 important design factors: reliability and request throughput.
Reliability: Google is able to achieve reliability at the software level so that a reliable
       computing infrastructure can be constructed on clusters of 15,000 commodity PCs
       distributed worldwide.
Request throughput: Google maximizes overall request throughput by performing
       parallel execution of individual search requests. This means that more search
       requests can be completed within a specific time interval.
                    Google query-serving architecture

-The first phase of query execution involves index servers consulting an inverted index
that match each query keyword to a matching list of documents.
-In the second phase, document servers fetch each document from disk to extract the
title and the keyword-in-context portion of the document.
-In addition to the 2 phases, the GWS also activates the spell checker and the ad server.
The spell checker verifies that the spelling of the query keywords is correct, while the
ad server generate advertisements that relate to the query and may therefore interest the
-As computer networks become cheaper and faster, a new computing paradigm, called
the Grid has evolved.
-The Grid is a large system of computing resources that performs tasks and provides to
users a single point of access, commonly based on the World Wide Web interface, to
these distributed resources.
-Users consider the Grid as a single computational resource.
-Users can submit thousands of jobs at a time without being concerned about where
they run.
-The Grid may scale from single systems to supercomputer-class compute forms that
utilize thousands of processors.
-Depending on the type of applications, the interconnection between the Grid parts can
be performed using dedicated high-speed networks or the Internet.
-The Grid technology is currently under intensive development.
-Major Grid projects include NASA’s Information Power Grid, two NSF Grid projects
(NCSA Alliance’s Virtual Machine Room and NPACI), the European DataGrid Project
and the ASCI Distributed Resource Management project.
-Also first Grid tools are already available for developers. The Globus Toolkit [20]
represents one such example and includes a set of services and software libraries to
        Comparison between Cluster Computing and
Cluster Computing : Grid Computing.
-The computers (or "nodes") on a cluster are networked in a tightly-coupled fashion--
they are all on the same subnet of the same domain, often networked with very high
bandwidth connections .
-The nodes are homogeneous; they all use the same hardware, run the same software, and
are generally configured identically.
-Each node in a cluster is a dedicated resource-generally only the cluster applications run
on a cluster node.
-One advantage available to clusters is the Message Passing Interface (MPI) which is a
programming interface that allows the distributed application instances to communicate
with each other and share information.
Grid Computing:
-Nodes on a grid can be loosely-coupled; they may exist across domains or subnets.
-The nodes can be heterogeneous; they can include diverse hardware and software
-A grid is a dynamic system that can accommodate nodes coming in and dropping out over
-Grids typically do not require high-performance interconnects; rather, they usually are
configured to work with existing network connections.
-Grid can incorporate cluster.

Clusters are promising
· Solve parallel processing paradox.
· Offer incremental growth and matches with funding pattern.
· New trends in hardware and software technologies are likely to
clusters more promising and fill SSI gap.
· Clusters based supercomputers (Linux based clusters) can be

To top