A Primer on Memory Consistency and Cache Coherence, Second Edition
内存连贯性与缓存一致性导论。
第二版。
英文原版。
Many modern computer systems and most multicore chips (chip multiprocessors) support sharedmemory in hardware. In a shared memory system, each of the processor cores may read and writeto a single shared address space. For a shared memory machine, the memory consistency model defines the architecturally visible behavior of its memory system.
内存连贯性和缓存一致性是现代计算机系统,特别是多核芯片(Chip Multiprocessors)设计中的核心概念。在共享内存系统中,每个处理器核心都可以读取和写入同一个共享地址空间,这使得多个处理器能够协作执行任务。内存一致性模型定义了这种系统中内存系统的架构可见行为,它规定了加载和存储(或内存读写)如何作用于内存,并确保在并发操作下数据的一致性。
一致性定义提供了一系列规则,指导如何处理负载和存储操作。为了支持内存一致性模型,许多机器实施了缓存一致性协议,以确保数据的多个缓存副本保持最新。缓存一致性协议确保当一个处理器修改了共享数据时,其他处理器的缓存能够同步更新,避免出现数据不一致的情况。
本导论的目标是帮助读者理解和掌握一致性与缓存一致性的基本概念,包括它们所解决的问题以及各种解决方案。书中不仅涵盖了高层次的概念,还提供了来自真实世界系统的具体实例。第二版在第一版的基础上反映了过去十年的进步,新增了两个章节:一个是关于非CPU加速器(如GPU)的一致性和一致性,另一个是关于一致性与缓存一致性方面的形式化工作和工具。
《内存连贯性和缓存一致性导论》第二版由Vijay Nagarajan、Daniel J. Sorin、Mark D. Hill和David A. Wood四位专家撰写,他们分别来自爱丁堡大学、杜克大学和威斯康星大学麦迪逊分校。这本书是工程和计算机科学领域的Synthesis Digital Library系列的一部分,旨在快速发布原创的、具有影响力的科研成果,以印刷和数字格式供读者查阅。
通过深入学习本书,读者将能够理解共享内存系统中的一致性模型是如何确保多处理器间通信的正确性的,以及缓存一致性协议如何维护多个处理器对同一数据的访问同步,这对于理解和优化多核系统性能至关重要。此外,对于非CPU加速器(如GPU)的一致性问题的探讨,也反映了当前硬件发展趋势对软件开发和系统设计的新挑战。
1