Next: Shared Memory Organization
 Up: Introduction
 Previous: SIMD Architecture
     Contents 
MIMD Architecture
Figure 1.6:
Two MIMD Categories; Shared Memory and Message Passing MIMD Architectures.
| 
 | 
 
- Multiple instruction multiple data streams (MIMD) parallel architectures are made of multiple processors and multiple memory modules connected together via some interconnection network.
 
- They fall into two broad categories: shared memory or
message passing. Figure 1.6 illustrates the general architecture of these two categories.
 
- Processors exchange information through their central shared memory in shared memory systems, and exchange information through their interconnection network in message passing systems.
- A shared memory system typically accomplishes interprocessor coordination through a global memory shared by all processors. 
- The bus/cache architecture facilitates the need for expensive multi-ported memories and interface circuitry as well as the need to adopt a message-passing paradigm when developing application software.
 
- Because access to shared memory is balanced, these systems are also called SMP (symmetric multiprocessor) systems. 
 
- Commercial examples of SMPs are Sequent Computer's Balance and Symmetry, Sun Microsystems multiprocessor servers, and Silicon Graphics Inc. multiprocessor servers.
 
 
- A message passing system (also referred to as distributed memory) typically combines the local memory and processor at each node of the interconnection network.
- There is no global memory, so it is necessary to move data from one local memory to another by means of message passing. This is typically done by a Send/Receive pair of commands, which must be written into the application software by a programmer (data
copying and dealing with consistency issues).
 
- Commercial examples of message passing architectures were the nCUBE, iPSC/2, and various Transputer-based systems. These systems eventually gave way to Internet connected systems whereby the processor/memory nodes were either Internet servers or clients on individuals' desktop.
 
 
 
- It was also apparent that distributed memory is the only way efficiently to increase the number of processors managed by a parallel and distributed system. If scalability to larger and larger systems (as measured by the number of processors) was to continue, systems had to use distributed memory techniques. 
 
- These two forces created a conflict: programming in the shared memory model was easier, and designing systems in the message passing model provided scalability. 
 
- The distributed-shared memory (DSM) architecture began to appear in systems like the SGI Origin2000, and others. In such systems, memory is physically distributed; for example, the hardware architecture follows the message passing school of design,
but the programming model follows the shared memory school of thought.
 
- As far as a programmer is concerned, the architecture looks and behaves like a shared memory machine, but a message passing architecture lives underneath the software. Thus, the DSM machine is a hybrid that takes advantage of both design schools.
 
Subsections
 
 
 
  
 Next: Shared Memory Organization
 Up: Introduction
 Previous: SIMD Architecture
     Contents 
Cem Ozdogan
2006-12-27