General Characteristics:
> all processors can access all memory as global address space
> Multiple processors can operate independently
> If any processor modify any memory location, visible to other processors
> Historically, shared memory machines have been classified as UMA and NUMA, based upon memory access times.
Fig. UMA Fig. NUMA
Advantages:
> Global address space provides a user-friendly programming perspective to memory
> Data sharing between tasks is both fast and uniform due to the proximity of memory to CPUs
Disadvantages:
> Lack of scalability between memory and CPUs.
Adding more CPUs can geometrically increases traffic on the shared memory-CPU path, and for cache coherent systems, geometrically increase traffic associated with cache/memory management.
> Programmer responsibility for synchronization constructs that ensure "correct" access of global memory.
No comments:
Post a Comment