Instruction Stream and Data Stream: Flynn'S Classification
Instruction Stream and Data Stream: Flynn'S Classification
Instruction Stream and Data Stream: Flynn'S Classification
This classification was first studied and proposed by Michael Flynn in 1972. Flynn
did not consider the machine architecture for classification of parallel computers; he
introduced the concept of instruction and data streams for categorizing of computers.
All the computers classified by Flynn are not parallel computers, but to grasp the
concept of parallel computers, it is necessary to understand all types of Flynn’s
classification. Since, this classification is based on instruction and data streams, first
we need to understand how the instruction cycle works.
Examples
CDC 6600 which is unpipelined but has multiple functional units.
Therefore, all the processing elements simultaneously execute the same instruction
and are said to be 'lock-stepped' together. Each processor takes the data from its own
memory and hence it has on distinct data streams. Every processor must be allowed to
complete its instruction before the next instruction is taken for execution. Thus, the
execution of instructions is synchronous.
Example
ILLIAC-IV, PEPE, BSP,
Therefore, for handling multiple instruction streams and single data stream, multiple
control units and multiple processing elements are organised in this classification. All
processing elements are interacting with the common shared memory for the
organisation of single data stream.
This classification is not popular in commercial machines as the concept of single data
streams executing on multiple processors is rarely applied.
Example
C.mmp built by Carnegie-Mellon University.
In this organization, multiple processing elements and multiple control units are
organized as in MISD. But the difference is that now in this organization multiple
instruction streams operate on multiple data streams. Therefore, for handling multiple
instruction streams, multiple control units and multiple processing elements are
organized such that multiple processing elements are handling multiple data streams
from the Main memory.
The processors work on their own data with their own instructions. Tasks executed by
different processors can start or finish at different times. They are not lock-stepped, as
in SIMD computers, but run asynchronously. This classification actually recognizes
the parallel computer. That means in the real sense MIMD organisation is said to be a
Parallel computer. All multiprocessor systems fall under this classification.
Example
IBM 370/168 MP, Univac 1100/80, Tandem/16, IBM 3081/3084,