2. Introduction
Parallel computers are those that emphasize the parallel processing
between the operations in some way.
Parallel computers can be characterized based on the data and
instruction streams forming various types of computer organizations.
They can also be classified based on the computer structure, e.g.
multiple processors having separate memory or one shared global
memory.
Parallel processing levels can also be defined based on the size of
instructions in a program called grain size
3. Types of Classification
1. Classification based on the instruction and data streams
2. Classification based on the structure of computers
3. Classification based on how the memory is accessed
4. Classification based on grain size
4. FLYNNS CLASSIFICATION
proposed by Michael Flynn in 1972.
introduced the concept of instruction and data streams for categorizing of
computers.
this classification is based on instruction and data streams, first we need to
understand how the instruction cycle works.
Instruction Cycle
The instruction cycle consists of a sequence of steps needed for the execution of an
instruction in a program.
A typical instruction in a program is composed of two parts: Opcode and Operand.
6. Instruction Stream and Data Stream
In the complete cycle of instruction execution, a flow of instructions
from main memory to the CPU is established. This flow of instructions
is called instruction stream.
there is a flow of operands between processor and memory bi-
directionally. This flow of operands is called data stream.
7. Flynns Classification
SISD
Single instruction: Only one instruction stream is being acted or
executed by CPU during one clock cycle.
Single data stream: Only one data stream is used as input during one
clock cycle.
SISD machines are conventional serial computers.
A SISD computing system is a uniprocessor machine
8. SIMD (Single Instruction Multiple Data Stream)
A SIMD system is a multiprocessor machine, capable of executing the same instruction on all the CPUs but
operating on the different data stream.
all the processing elements simultaneously execute the same instruction and are said to be 'lock-stepped'
together.
MISD (Multiple Instruction Single Data stream)
An MISD computing is a multiprocessor machine capable of executing different instructions on processing
elements but all of them operating on the same data set.
SIMD Organization MISD Organization
9. MIMD (Multiple Instruction Multiple Data Stream)
A MIMD system is a multiprocessor machine that is capable of
executing multiple instructions over multiple data streams.
Each processing element has a separate instruction stream and data
stream.
This classification actually recognizes the parallel computer.
10. STRUCTURAL CLASSIFICATION
parallel computer (MIMD) can be characterized as a set of multiple processors and shared
memory or memory modules communicating via an interconnection network.
Structural classification Shared Memory Distributed Memory
When multiprocessors communicate through the global shared memory modules then this
organisation is called Shared memory computer or Tightly coupled systems
when every processor in a multiprocessor system, has its own local memory and the processors
communicate via messages transmitted between their local memories, then this organisation is
called Distributed memory computer or Loosely coupled system
11. Shared Memory System / Tightly Coupled System
multiple processors share a global main memory, which may have many modules
The processors have also access to I/O devices. The inter- communication between processors, memory, and other
devices are implemented through various interconnection networks
Processor-Memory Interconnection Network (PMIN)
This is a switch that connects various processors to different memory modules
There can be a conflict among processors such that they attempt to
access the same memory modules. This conflict is also resolved by PMIN.
Input-Output-Processor Interconnection Network (IOPIN)
All processors communicate with an I/O channel to interact with
an I/O device with the prior permission of IOPIN.
Interrupt Signal Interconnection Network (ISIN)
synchronisation between processor is implemented by ISIN.
When a processor wants to send an interruption to another processor,
then this interrupt first goes to ISIN, through which it is passed to the destination.
processor.
in case of failure of one processor, ISIN can broadcast the message to
other processors about its failure.
12. Since, every reference to the memory in tightly coupled
systems is via interconnection network, there is a delay in
executing the instructions. To reduce this delay, every
processor may use cache memory for the frequent references
made by the processor as shown
Tightly coupled with cache memory
The shared memory multiprocessor systems can further be
divided into three modes which are based on the manner
in which shared memory is accessed.
Modes of Tightly coupled systems
13. Uniform Memory Access Model (UMA)
main memory is uniformly shared by all processors in multiprocessor systems
and each processor has equal access time to shared memory. This model is
used for time-sharing applications in a multi user environment.
Non-Uniform Memory Access Model (NUMA)
the access to a local memory is uniform for its corresponding processor as it
is attached to the local memory. But if one reference is to the local memory
of some other remote processor, then the access is not uniform. It depends
on the location of the memory.
Cache-Only Memory Access Model (COMA)
In NUMA model, if we use cache memories instead of local memories, then
it becomes COMA model.
14. Loosely Coupled Systems
each processor in loosely coupled systems is having a
large local memory (LM), which is not shared by any
other processor.
such systems have multiple processors with their own
local memory and a set of I/O devices.
These computer systems are connected together via
message passing interconnection network through
which processes communicate by passing messages to
one another.
Since every computer system or node in multicomputer
systems has a separate memory, they are called
distributed multicomputer systems.
e, these systems are also known as no-remote memory
access (NORMA) systems.