Skip to main content

Multiprocessor classification by memory organization

Short answer

Shared-memory multiprocessors have a global memory (UMA or NUMA) and communicate via shared variables; distributed-memory multiprocessors have private memories per processor and use message passing.

How can a multiprocessor be classified according to its memory organization? Explain.

Depending on the memory organisation, a multiprocessor is classified as:

1. Shared memory (tightly coupled) multiprocessor

All processors share one global memory. Communication is by reading and writing shared variables. Each processor may also have a local cache or memory.

  • UMA (uniform memory access): every processor has equal access time to all memory (symmetric multiprocessor, SMP).
  • NUMA (non-uniform memory access): shared address space but memory is physically distributed, so access time depends on the location.
  • It is fast but memory contention and cache coherence limit the number of processors.

2. Distributed memory (loosely coupled) multiprocessor

Each processor has its own private local memory and I/O, and processors communicate by sending messages over a network. There is no memory contention, and it scales easily. Communication is slower and programming is harder.

 Shared:                    Distributed:
 P1  P2  P3                 P1-M1   P2-M2   P3-M3
  \  |  /                     \      |      /
 [ interconnection ]          [ message network ]
       |
 [ shared memory ]

✓ Answer checked by Claude Opus 5.5 (high effort)

All Computer Organization and Architecture chapter 8 questions →