Distributed and Parallel System
(Lecture-10)
BY
ABDUS SAMAD
Flynn’s Classification of Computer
Architecture
In 1966, Michael Flynn proposed a classification
for Computer Architecture based on the number
of instructions streams and data streams.
Flynn uses the concept of streams for defining a
machine’s structure.
Instruction Stream: is the sequence of
instructions as executed by the machine
Data Stream: is a sequence of data including
input, or partial or temporary result, called by the
instruction Stream.
Flynn’s Classification...
Flynn’s Classification...
Instructions are decoded by the Control
Unit and then Control Unit send the
instructions to the processing units for
execution.
Data Stream flows between the
processors and memory bi-directionally
Flynn’s Classification...
SISD SIMD MISD MIMD
Flynn’s Classification...
Single Instruction Multiple Instruction
Single Data SISD MISD
Multiple Data SIMD MIMD
Flynn’s Classification...
SISD: Single Instruction Stream Single Data Stream
(Classical Von Neumann Architecture)
SIMD: Single Instruction Stream Multiple Data Stream
MISD: Multiple Instruction Stream Single Data Stream
(Non existent, just listed for completeness)
MIMD: Multiple Instruction Stream Multiple Data Stream
(Most common and general parallel machine)
SISD
A traditional sequential computer which exploits no
parallelism in either the instruction or data streams.
At one time, one instruction operates on one data
but may be overlapped in their execution stages
(pipelining).
SISD computer can have more than one functional
unit and all are under supervision of one CU.
Example (with One Functional Unit): IBM701, PDP VAX11/780.
Example (with Multiple Functional Unit): IBM360/91, CRAY-I.
SIMD
Each instruction is executed on a different set of
data by different processors i.e. Multiple
processing units of the same type process on
multiple -data streams. (Natural parallelism).
This group is dedicated to array processing
machines.
Sometimes vector processors can also lies in this
group. (An array can, in rare cases, have only
one index collection, a vector is technically
indicative of an array with at least two indices).
• Example: Illiac-IV, BSP, STARAN, MPP.
SIMD
MISD
Multiple instructions operate on a single data
stream.
Uncommon architecture which is generally used
for fault tolerance.
Heterogeneous systems operate on the same
data stream and must agree on the result.
The result of one processor become the input of
the next processor.
Examples include the Space Shuttle flight
control computer.
MISD
MIMD
Multiple instruction streams operating on multiple
data streams.
Classical distributed memory or SMP architectures.
PEs are connected with some memory through a
common bus .
Task and data is distributed among these PEs.
So at the same time all PEs execute the instruction
on their data to complete the given task.
MIMD
Shared Memory Message Passing
System System
In MIMD, if processors do not have a common
shared memory then it is called tightly coupled.
In MIMD, if processors have a common shared
memory then it is called loosely coupled.
Example: IBM370/168MP, Univac 1100/89,
C.mmp, Cray-2, Cray-X MP
Thanks
In the next lecture we will
discussion Feng’s classification