SISD, SIMD, MISD, MIMD systems - Cloud Computing

Hardware architectures for parallel Processing

  • The core elements of parallel processing are CPUs. Based on the number of instructions and data streams, that can be processed simultaneously, computing systems are classified into the following four categories:
    • Single-instruction, Single-data (SISD) systems
    • Single-instruction, Multiple-data (SIMD) systems
    • Multiple-instruction, Single-data (MISD) systems
    • Multiple-instruction, Multiple-data (MIMD) systems

Single–Instruction, Single Data (SISD) systems

  • SISD computing system is a uni-processor machine capable of executing a single instruction, which operates on a single data stream.
  • Machine instructions are processed sequentially, hence computers adopting this model are popularly called sequential computers.
  • Most conventional computers are built using the SISD model.
  • All the instructions and data to be processed have to be stored in primary memory.
  • The speed of the processing elements in the SISD model is limited by the rate at which the computer can transfer information internally.
  • Dominant representative SISD systems are IBM PC, Macintosh, and workstations.

Single–Instruction, Multiple Data (SIMD) systems

  • SIMD computing system is a multiprocessor machine capable of executing the same instruction on all the CPUs but operating on different data streams.
  • Machines based on this model are well suited for scientific computing since they involve lots of vector and matrix operations.
  • For instance statement Ci = Ai * Bi can be passed to all the processing elements (PEs), organized data elements of vectors A and B can be divided into multiple sets ( N- sets for N PE systems), and each PE can process one data set.
Dominant representative SIMD systems are Cray’s Vector processing machine and Thinking Machines Cm*, and GPGPU accelerators

Multiple – Instruction, Single Data (MISD) systems

  • MISD computing system is a multi-processor machine capable of executing different instructions on different Pes all of them operating on the same data set.
  • Machines built using the MISD model are not useful in most applications.
  • Few machines are built but none of them are available commercially.
  • This type of system is more of an intellectual exercise than a practical configuration.

Multiple – Instruction, Multiple Data (MIMD) systems

  • MIMD computing system is a multi-processor machine capable of executing multiple instructions on multiple data sets.
  • Each PE in the MIMD mode has separate instruction and data streams, hence machines built using this model are well suited to any kind of application.
  • Unlike SIMD, MISD machines, PEs in MIMD machines work asynchronously,
MIMD machines are broadly categorized into shared-memory MIMD and distributed memory 

MIMD is based on the way PEs are coupled to the main memory