Abstract

This chapter discusses scalable shared-memory systems. The scalable shared-memory systems (SSMS) are broken into the following categories: (1) directory-based, (2) hierarchical, (3) reflective memory, (4) non-cache-coherent, (5) vector, and (6) virtual shared-memory architectures. Hierarchical systems utilize a tree-structured system organization. Hierarchical systems are appealing because of the conceptually simple recursive coherence protocols and the ease with which they can be extended. They do not have the problem of limited pointers found in the flat systems because the system is expanded by adding depth to the hierarchy. Reflective memory systems rely on replicated memory pages maintained by updated messages instead of invalidations. Reflective memory systems attempt to minimize the processor stalls caused by read misses by satisfying all read misses from a local copy of shared memory. Non-cache-coherent systems support a scalable memory interconnect but do not support hardware cache coherence. Vector machines use a very high-speed pipelined main memory to build a high-performance shared-memory multiprocessor without caches. Directory-based systems use a relatively flat interconnection hierarchy or support a protocol that is independent of any such hierarchy. As these systems support cache coherence and typically have a non-uniform memory structure, they are generally referred to as CC-NUMA systems.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call