Jump to content

Shared-memory architecture

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by ScotXW (talk | contribs) at 13:24, 15 May 2015. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
HSA defines a special case of memory sharing, where the MMU of the CPU and the IOMMU of the GPU have the an identical pagable virtual adress space.

In computer architecture, shared memory architecture (SMA) refers to a multiprocessing design where several processors access globally shared memory.[1]

Shared memory architectures may use:[1]

In a SMA system processors communicate by reading and writing memory locations.[1] The two key problems in scaling an SMA system are:[1]

  • performance degradation due to "contention" when several processors try to access the same memory location.
  • lack of "coherence" if memory is cached and goes out of synch with the original values as modifications take place.

In case different types of processors like e.g. a CPU and a GPU have a shared memory architecture, the MMU of the CPU and the IOMMU of the GPU have to share certain characteristics, like e.g. a common adress space.

See also

References

  1. ^ a b c d Advanced computer architecture and parallel processing by Hesham El-Rewini et al. 2005 ISBN 978-0-471-46740-3 pages 77-80