Ticker

6/recent/ticker-posts

Difference between Shared & Distributed Memory MIMD Model

Shared Memory MIMD machines

  • All the PEs are connected to a single global memory and they all have access to it.
  • Systems based on this model are also called tightly coupled multi processor systems.
  • The communication between PEs in this model takes place through the shared memory.
  • Modification of the data stored in the global memory by one PE is visible to all other PEs.
  • The dominant representative shared memory MIMD systems are silicon graphics machines and Sun/IBM SMP ( Symmetric Multi-Processing).

Distributed Memory MIMD machines

  • All PEs have a local memory. Systems based on this model are also called loosely coupled multi-processor systems.
  • The communication between PEs in this model takes place through the interconnection network, the inter-process communication channel, or IPC.
  • The network connecting PEs can be configured to tree, mesh, cube, and so on.
  • Each PE operates asynchronously, and if communication/synchronization among tasks is necessary, they can do so by exchanging messages between them.

Shared Vs Distributed MIMD model

  • The shared memory MIMD architecture is easier to program but is less tolerant to failures and harder to extend with respect to the distributed memory MIMD model.
  • Failures, in a shared memory MIMD affect the entire system, whereas this is not the case of the distributed model, in which each of the PEs can be easily isolated.
  • Moreover, shared memory MIMD architectures are less likely to scale because the addition of more PEs leads to memory contention.
  • This is a situation that does not happen in the case of distributed memory, in which each PE has its own memory.
As a result, distributed memory MIMD architectures are most popular today