Chapter 7

Cache Coherency and Memory Consistency

Abstract

The fundamental problem in shared memory programming is discussed in this chapter: given the asynchronous behavior of threads and the hierarchical structure of the memory system, what is the value retrieved by a read of a memory location? Is it the correct, expected data value? This issue leads to the notion of a memory consistency model, and a high-level overview of the relevance of this concept is presented. A few concepts discussed in this chapter play a fundamental role in what follows, and in particular, the fact that mutual exclusion, initially introduced to enforce thread safety in memory write operations, is also required to enforce memory consistency in memory read operations. ...

Get Shared Memory Application Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.