多处理器系统中的缓存式共享内存系统解析
在多处理器系统的发展中,内存管理和缓存一致性是至关重要的问题。缓存式共享内存系统(Cache - only shared - memory systems),特别是缓存式内存架构(COMA),为解决这些问题提供了新的思路。本文将深入探讨COMA系统的基本概念、硬件结构、协议以及相关的设计问题,并通过一些实例和练习来加深理解。
1. COMA系统概述
传统的多处理器系统在内存管理和数据迁移方面存在一些缺点。为了支持更细粒度的内存迁移和复制,如在缓存块级别,通过硬件协议实现的缓存式内存架构(COMA)应运而生。COMA系统允许内存块在私有缓存和本地内存之间迁移和复制,通过硬件级协议实现,对虚拟内存管理系统透明。
2. COMA系统的基本概念、硬件结构和协议
2.1 硬件结构
为了引入COMA架构,我们先考虑一个简单的系统,由多个节点组成,每个节点包含一个处理器、一个私有缓存和一个本地内存,节点通过基于广播的互连(如总线)连接。与cc - NUMA内存组织不同,COMA中的每个内存模块都被转换为类似缓存的结构,称为吸引内存(Attraction Memory,AM)。每个内存块都附有标签和状态信息,就像缓存行一样,这使得内存块可以在任何AM中迁移,并在多个AM中复制。
所有的AM包含整个应用的内存足迹(application footprint),并有额外的空间用于在节点之间复制一些内存块。在COMA中,内存块可以放置在任何节点的内存中,而不像cc - NUMA那样有固定的主位置。
2.2 设计问题
- 块定
COMA系统与缓存一致性解析
超级会员免费看
订阅专栏 解锁全文
1593

被折叠的 条评论
为什么被折叠?



