Parallel Computing - Unit IV
Parallel Computing - Unit IV
System Model
Unit 4
By
Niranjan Lal
1
CONTENTS
Introduction
DCS Models
Conclusion
2
Introduction
A Distributed System (DS) is one in which
• Hardware and software components, located at remote
networked computers, coordinate and communicate
their actions only by passing messages. Any distance
may separate computers in the network.
• Sharing of resources is the main motivation of
distributed systems. Resources may be managed by
servers and accessed by clients, or they may be
encapsulated as objects and accessed by client objects.
3
Introduction cont…
• A distributed operating system runs on multiple
independent computers, connected through
communication network, but appears to its users
as a single virtual machine and runs its own OS.
4
Introduction cont…
• Each computer node has its own memory. Examples of
Distributed Systems are: Internet, Intranet, Mobile and
ubiquitous computing.
• As a consequence of this definition, the characteristics
of distributed systems or networked-computers are:
5
Introduction cont…
• Concurrency: How to handle the sharing of resources between clients? Execution of
concurrent programs share resources: e.g. web pages, files, etc.
• No global clock: In a distributed system, computers are connected through network and have
their own clocks. Communication between programs is only through messages and their
coordination depends on time. Every client's (computer) perception of time is different.
Accurate time synchronization is not possible in DS. How to synchronize activities?
• Independent Failure: Distributed systems should be planned for the consequences of
possible failures of its components. How to handle a failure in the network or in a particular
client? Other clients might not be immediately aware of a failure. Each component of the
distributed system can fail independently leaving others still running. Faults in the network
results in isolation of the failed component only, but system continue running.
6
Characteristics of Distributed Systems
A Distributed System has the following characteristics:
• It consists of several independent computers connected through
communication network,
• The computers communicate with each other by exchanging message over
a communication network.
• Each computer has its own memory, clock and runs its own operating
system.
• Each computer has its own resources, called local resources Remote
resources are accessed through the network
7
Motivation
• The prime motivation of distributed systems is to share resources . A resource is an
entity that can be usefully shared among users. Any hardware or software entity is
a resource.
• We use shared resources all the time. Resources are managed by a service. A
service is managed by one or more servers, which provide access to a set of
resources to clients via a set of well-defined operations (an interface).
• The motivation behind the development of Distributed Systems was:
– Users desire to have computational power at low cost.
– Need of the people working in a group to communicate with each other
– Sharing of information (data)
– Sharing of expensive computer resources.
Designing such systems became possible with the availability of cheap and powerful
microprocessors and advances in communication technology. When a few powerful
workstations are interconnected and can communicate with each other, the total computing
power available in such a system can be enormous.
8
Advantages of Distributed Systems are
• Resource Sharing: Due to communication between connected
computers resources can be shared among computers.
• Enhance Performance: This is due to the fact that many tasks
can be executed concurrently at different computers. Load
distribution among computers can further improve response time.
• Improved reliability and availability: Increased reliability is due
to the fact that if few computers fail others are available and hence
the system continues.
• Modular expandability: New hardware and software resources
can be added without replacing the existing resources.
9
Inherent Limitations of Distributed Systems
11
1. Mini Computer Model,
13
2. Workstation Model
15
2. Workstation Model cont…
This model is not so simple to implement because several issues must be resolved. These
issues are as follows:
• How does the system find an idle workstation?
• How is a process transferred from one workstation to get it executed on another
workstation?
• What happens to a remote process if a user logs onto a workstation that was idle
until now and was being used to execute a process of another workstation?
16
2. Workstation Model cont…
Three commonly used approaches for handling the third issue are as follows:
1. The first approach is to allow the remote process share the
resources of the workstation along win its own logged -on .user's
processes. This method is easy to implement, but it defeats the
main idea of workstations serving as personal computers, because
if remote processes are allowed to execute simultaneously with
the logged-on user's own processes, the logged-on user does not
get his or her guaranteed response.
2. The second approach is to kill the remote process. The main
drawbacks of this method are that all processing done by the
remote process gets lost and tie file system may be left in an
inconsistent state; making this method unattractive.
17
2. Workstation Model cont…
Three commonly used approaches for handling the third issue are as follows:
3. The third approach is, migrate the remote process
back to its home workstation, so that its execution can be
continued there. This method is difficult to implement
because it requires the system to support preemptive
process migration facility.
18
3. Client-Server Model
File server
DNS server
result result
Server
Client
Key:
Process: Computer:
Workstation
Workstation Workstation
100Gbps
LAN
19
Services Provided by Multiple Servers
Service
Replication
• Availability
Server • Performance
Client
Server
Workstation
Workstation Workstation
Client 100Gbps
LAN
Server
MasterSlave Slave Slave
node 1 2 N
20
Proxy Servers and Caches
Client Web
server
Proxy
server
Client Web
Ex. Internet Service Provider server
Workstation
Workstation Workstation
100Gbps
LAN
1Gbps SAN
21
Peer Processes
Application Application
Coordination Coordination
code code
Application
Distributed whiteboard application
Coordination
code
Workstation
22
Mobile Code and Agents
Client Web
Applet code server
Web
Client Applet server
Workstation
Workstation Workstation
100Gbps
LAN
23
Network Computers and Thin Clients
Workstation Workstation
100Gbps
LAN
100Gbps
LAN MasterSlave Slave Slave
node 1 2 N
Server 1 Server N
1Gbps SAN
24
4. Workstation-Server Model
25
4. Workstation-Server Model
The workstation model is a network of personal workstations
having its own disk & a local file system.
A workstation with its own local disk is usually called a diskful
workstation & a workstation without a local disk is called a diskless
workstation. Diskless workstations have become more popular in
network environments than diskful workstations, making the
workstation-server model more popular than the workstation
model for building distributed computing systems.
A distributed computing system based on the workstation-server
model consists of a few minicomputers & several workstations
interconnected by a communication network.
26
4. Workstation-Server Model
In this model, a user logs onto a workstation called his or her
home workstation. Normal computation activities required by the
user's processes are performed at the user's home workstation,
but requests for services provided by special servers are sent to a
server providing that type of service that performs the user's
requested activity & returns the result of request processing to the
user's workstation.
Therefore, in this model, the user's processes need not migrated
to the server machines for getting the work done by those
machines.
Example:The V-System.
27
4. Workstation-Server Model cont…
As compared to the workstation model, the workstation-server model has
several advantages:
1. It is much cheaper to use a few minicomputers equipped with large fast
disks that are accessed over the network than a large number of dishful
workstations, with each workstation having a
2. Diskless workstations are also preferred to dishful workstations from a
system maintenance point of view. Software installation, backup and
hardware maintenance are easier to perform with a few large disks than win
many small disks scattered all over a building or campus.
3. In the workstation-server model, since all files are managed by be file
servers, users have the flexibility to use any workstation and access the files
in the same manner irrespective of which workstation the user is currently
logged on. Note that this is not true win the workstation model, in which
each workstation has its local file system, because different mechanisms are
needed to access local and remote files.
28
4. Workstation-Server Model cont…
As compared to the workstation model, the workstation-server
model has several advantages:
4. In the workstation-server model, the request-response protocol
described above is mainly used to access the services of the
server machine. Therefore unlike the workstation model, this
model does not need a process migration facility which is
difficult to implement.
5. A user has guaranteed response time because workstations are
not used for executing remote processes. However the model
does not utilize the processing capability of idle workstations.
29
5. Processor–Pool Model:
30
5. Processor–Pool Model cont…
• The processor-pool model is based on the observation that
most of the time a user does not need any computing power
but once in a while the user may need a very large amount of
computing power for a short time.
• Therefore,unlike the workstation-server model in which a
processor is allocated to each user,in processor-pool model the
processors are pooled together to be shared by the users as
needed.
• The pool of processors consists of a large number of
microcomputers & minicomputers attached to the network.
31
5. Processor–Pool Model cont…
• Each processor in the pool has its own memory to
load & run a system program or an application
program of the distributed computing system.
• In this model no home machine is present & the user
does not log onto any machine.
• This model has better utilization of processing power
& greater flexibility.
• Example:Amoeba& the Cambridge Distributed
Computing System.
32
5. Processor–Pool Model cont…
As compared to the workstation-server model, the processor-pool model
allows better utilization of the available processing power of a distributed
computing system. This is because
• In the processor-pool model, the entire processing power of the system is
available for use by the currently logged-users, whereas this is not true for
the workstation-server model in which several workstations may be idle at
a particular time but they cannot be used for processing the jobs of other
users.
• Furthermore the processor-pool model provides greater flexibility than
the workstation-server model in the sense that the system's services can
be easily expanded without the need to install any more computers.
• The professors in the pool can be allocated to act as extra servers to carry
any additional load arising from an increased user population or to
provide new services.
33
6. Hybrid Model
• The workstation-server model has a large number of computer users
only performing simple interactive tasks &-executing small programs.
• In a working environment that has groups of users who often perform
jobs needing massive computation,the processor-pool model is more
attractive & suitable.
• To combine Advantages of workstation-server & processor-pool
models,a hybrid model can be used to build a distributed system.
• The processors in the pool can be allocated dynamically for
computations that are too large or require several computers for
execution.
• The hybrid model gives guaranteed response to interactive jobs
allowing them to be more processed in local workstations of the users
34
6. Hybrid Model
• Based on the workstation-server model but with the addition of a
pool of processors.
• More expensive.
35
Issues in Distributed Computing System
Transparency (=SSI)
• Access transparency
– Memory access: DSM
– Function call: RPC and RMI
• Location transparency
– File naming: NFS
– Domain naming: DNS (Still location concerned.)
• Migration transparency
– Automatic state capturing and migration
• Concurrency transparency (See the next page)
– Event ordering: Message delivery and memory consistency
• Other transparency:
– Failure, Replication, Performance, and Scaling
send
Z
receive receive
m3 m1 m2
A
receive receive receive
t1 t2 t3
39
Thank You For Listening..!!
Questions ????
40