Flynn’s Taxonomy

Flynn’s taxonomy:

  • SISD
  • SIMD
    • Vectorial
    • Matrix
  • MISD
  • MIMD

SISD

Single instruction stream, Single data stream (SISD). It corresponds to the Von Neumann architecture.

SIMD

Single instruction stream, Multiple data stream (SIMD).

Segmentation or pipelining consists on adding a task or instruction to different units that perform different steps, so single instructions can be parallelized.

n vector

A subtype of SIMD is vectorial. It assumes that data can have dimensions.

A matrix computer contains as many ALUs as there is data.

MISD

Multiple instruction stream, Single Data stream (MISD) is also known as systolic.

MISD is only theoretical.

MIMD

Multiple instruction stream, multiple data stream (MIMD)

MIMD Memory architecture

MIMD memory access categories:

  • Uniformed memory access (UMA)
  • Not uniformed memory access (NUMA)

Uniformed memory access (UMA) means that all processors access memory with equal latency.

It introduces the idea of hierarchy memory, where ALUs have individual cache memory but there is still a common shared memory.

In UMA, all units use memory in the same way, with the same frequency.

Not uniformed memory access (NUMA) means that memory access time varies depending on the location of the memory with respect to the process.

MIMD memory architectures:

  • SMP
  • DSM

Symmetric multiprocessing memory (SMM) and

Ways in which SMP manages memory:

  • Uniformed memory access (UMA)
  • Not uniformed memory access (NUMA)

Distributed Shared Memory (DSM) is a type of memory that is physically distributed across multiple nodes, but logically shared.

In conclusion, MIMD-SMM can be only UMA while MIMD-DSM can be UMA or NUMA .

MIMD Processing Models

A symmetric multiprocessing (SMP) or Shared Memory Processor is high in coupling. It is used in modern multi-core processors.

Symmetric multiprocessing at Wikipedia

A Massively Parallel Processor (MPP) system consists of multiple independent processors (or nodes), each with its own local memory and interconnect network. They are low in coupling.

MPP adds complexity when allocating cache, local memo.

MPP may use DSM, but it usually uses message passing (MPI, PVM, etc.) instead of memory sharing.

You might also be interested in…

Leave a Reply

Your email address will not be published. Required fields are marked *