Single Instruction Single Data

Source: Wikipedia

The original Von Neumann Architecture that does not employ any kind of parallelism. The sequential processor takes data from a single address in memory and performs a single instruction on the data. All single processor systems are SISD.


Common usage

  • Older Computers
  • Microcontrollers










Single Instruction Multiple Data

Source: Wikipedia


A single instruction is executed on multiple different data streams. These instructions can be performed sequentially, taking advantage of pipelining, or in parallel using multiple processors. Modern GPUs, containing Vector processors and array processors, are commonly SIMD systems.


Common usage

  • Graphics Processing Units












Multiple Instruction Single Data

In this architecture multiple instructions are performed on a single data stream. An uncommon type commonly used for fault tolerance. Different systems perform operations on the data and all the results must agree. Used on flight control systems where fault detection is critical.

Common Usage

  • Not used commercially.
  • Some specific use systems (space flight control)












Multiple Instruction Multiple Data

Source: Wikipedia

Multiple autonomous processors perform operations on difference pieces of data, either independently or as part of shared memory space.


Common Usage

  • Most modernĀ  desktop / laptop / mobile processors are MIMD processors.