Memory coherence (alternatively cache coherence or cache consistency) is the property of the shared memory systems (multiprocessors and distributed memory systems) in which any shared piece of memory (cache line or memory page) gives consistent values with accordance to earlier agreed consistency model despite accesses (maybe parallel) from different nodes (which may be processors in the multiprocessor or computers)

Various protocols have been devised for maintaining memory coherency, such as the MESI protocol, MSI protocol, MOSI protocol and the MOESI protocol. Most of the cache protocols in multiprocessors are supporting sequential consistency model.

See also: