<<

Distributed Lecture 4: Distributed Systems Taxonomy Taxonomy • There are different ways in which we can connect CPUs together.

• According to instruction and data stream,

the most widely used classification Taxonomy - scheme (taxonomy) is that created by DC Flynn in 1972.

MI MD

2 Distributed Computing Taxonomy, contd. • It classifies machines by the number of instruction streams and the number of

data streams.

Taxonomy • Multiple instruction streams means that - different instructions can be executed DC concurrently.

3 • • Flynn’s following Computer system means to

( 1966 classify four )

taxonomy forms

parallel can be fit into one of the :

was developed as a

Flynn’s taxonomy computer architectures Instruction Single

Multiple Single Data Data

Instruction Multiple

4 DC-Taxonomy

• • • • Single data Single instruction Computer: This is (obviously) classic the Deterministic • • • one Only the One Old style

CPU

clock clock cycle instruction instruction stream one

during during any

single input input serial  Single Instruction Single

execution

datastream core

(not  one

PC

parallel

acted on by CPUs clock clock cycle

for any , .g. i e.g. , von Neumann ) computer, e.g.: Data (SISD) 486

5 DC-Taxonomy

• • • Single instruction A form of Multiple Multiple data • • • • element operate on a Each clock cycle All modern computers on Nowadays it becomehas common Early the the

processing same

processing unit

parallel

instruction Single Instruction Multiple

different

 units units

 computer execute (PU)can

for anygiven

used this used model this first data GPUs

Data (SIMD) e.g., used in in used e.g.,

6 DC-Taxonomy

• • • • Two main e.g. Works Runs more operation Still highly processing. • • Vector pipelines arrays graphics

in in data

well lockstep

types is applied to to keep track of per deterministic

Single Instruction Multiple for

:

(i.e., all (i.e.,elements all specific

Data (SIMD) (know the

with a with lot of instruction set of synchronized same data regularity

) – , contd.

but but )

;

7 DC-Taxonomy

• • • Processor Vector pipelines Graphics • • ILLIAC IV MasPar Thinking Machine CM NEC SX Fujitsu vector IBM Single Instruction Multiple Data 9000 -

2 MP processor , Hitachi , Hitachi S

, Cray, X arrays - 1 &MP processor

- MP, 820

- units usually use usuallyunits 2

, 2

, ETA, ,

, (SIMD) Examples

10

 SIMD MasPar MP  Cray X -

MP - 1

8 DC-Taxonomy

class Few actual examples thisof have ever • • streams independently Each processing Single

of processing parallel

data stream

existed Multiple Instruction Single

units

computer

via via

unit independent fed works

into

multiple on on Data (MISD) data

instruction

9 DC-Taxonomy

Simultaneously • • Possible Possible • • workingthe Different Mayberedundant … = A x then If A

example uses

setof

Multiple Instruction Single the the

same CPU min ? Somewhat ?

signal

1 and and

! Data (MISD) Example signal

… = A x then If A>x x = application max

- Ainput = processing MAXINT

input, and do and a input,

stream CPU

intellectual 2

operations :

… x +A = x = sum

0

of

inputs ?

CPU

.

3

10 DC-Taxonomy

• • • Multiple Multiple category) late model computers, Intel e.g. Core Duo, in this The most • • working Every Each a different processor processor

Data Instruction with with a

common Multiple Instruction Multiple instruction instruction stream  different canbe

maybe

type  executing

datastream

of parallel

Data (MIMD) computer

(most

11 DC-Taxonomy

• deterministic synchronous Execution Multiple Instruction Multiple

can be ;

non asynchronous - deterministic Data (MIMD)

or or or

, contd .

12 DC-Taxonomy

• • all all the models. other e.g., MIMD Examples • • • • • • • Multiple Instruction Multiple Data but but to it same apply the MISD apply to different data SIMD SISD multi SMP Networked Many of current the

– – computers

- just one just one architectures architectures could include

core all all

CPUs CPUs PCs

parallel CPU

load different load same the load

active, others running NOP running others active,

computer computer data supercomputers

instruction instructions

clusters (MIMD)

but

AMD AMD Opteron , contd. IBM IBM BlueGene

13 DC-Taxonomy

Distributed Computing Taxonomy, Contd.

• Computers can perform various functions and each unit in a distributed system may

be responsible for only a set number of Taxonomy

functions in an organization. - DC We consider the concept of service models as a taxonomy of system configurations. 14 Distributed System Models

• Distributed programming falls into one of several basic models:

• Client-Server

• Peer-to-Peer

Taxonomy - • Services provided by multiple servers DC • Proxy servers and caches • Mobile code and mobile agents

• Thin clients and mobile devices 15 Client-server model

•Clients Invoke Individual Servers

Taxonomy

- DC

• The easiest form of distributed systems • Resources are centralized on servers • Large number of clients access them through 16 request-reply interactions Peer-to-peer Systems

• A peer-to-peer system is a collection of peer nodes . • Each peer is both a server and a client (“”). • Provides resources to other peers • Consumes resources from other peers.

• Characteristics: Taxonomy • Put together resources at the - edge of the DC • Share resources by direct exchange between nodes. • Perform critical functions in a decentralized manner. 17 Client-Server vs. Peer-to-Peer

Computing

Taxonomy

- DC

18 A Service by Multiple Servers

• Partition the set of objects and distribute them

between

themselves

Taxonomy -

• maintain DC replicated copies

• Web -SUN Network Information 19 Service Web Proxy Server

•A cache is a storage facility of recently used data objects that is closer to the objects themselves.

•Web proxy servers provide a shared cache of web

resources for the client machines at a site or across

Taxonomy -

several sites. DC • Increase availability • Increase performance • Reduce the load on the WAN and web server 20 Mobile Code - Web Applets

• The service is provided using a procedure.

• executed by a in the

server . Taxonomy

a) Client request results in the - • downloaded to the client and downloading of applet code DC executed locally • push service: the initiator is the server 21 b) Client interacts with the applet Thin Clients and Compute Servers Compute server Network computer or PC

Thin network Application

Client Process

Taxonomy

- DC

• A thin client is a lightweight computer that is purpose-built for remoting into a server (typically cloud or desktop environments). • It depends heavily on another computer (its 22 server) to fulfill its computational roles. Mobile Agents

• A mobile agent is a running program that travels from one computer to another in a

network carrying out a task on

someone’s behalf. Taxonomy - • It has the following features: DC • Autonomy • Cooperativeness • Mobility • Agents can continue to process tasks by migration with their 23 state.

Mobile Agents, contd.

• A mobile agent may make many invocations to local resources at each site it visits (e.g., access to individual entries).

• Might be used to:

• Taxonomy install software on the computers of an organization - • compare the prices of products of vendors DC • Negative aspects • They are a potential security threat to the resources • they can be themselves vulnerable (they may not be able to complete their tasks if they are refused 24 access to the information needed) Client-Server System vs.

Mobile Agent System

Taxonomy

- DC

25