ScaMPI:设计、实现与性能分析
1. I/O 总线与内存模型
I/O 桥将设备与主内存总线解耦,使得 I/O 总线无法拦截处理器对本地内存的访问。这限制了全局缓存一致性内存模型在硬件中的实现。不过,使用 I/O 总线作为连接点也有明显优势,I/O 总线是标准化的,这为独立硬件供应商带来了更大的市场,且产品销量增加会降低价格。此外,与处理器及其配套总线的更新换代相比,新一代 I/O 总线(如更快的时钟频率、更宽的总线等)的发展频率较低,因此外围板卡的成本相对特殊的专有硬件组件较低。
2. SCI 内存模型
SCI 详细记录了缓存一致性,但内存一致性模型则由实现者自行决定。可以实现顺序、处理器、弱或释放一致性等多种内存一致性模型,这适用于使用 I/O 或缓存一致处理器总线作为连接点的系统。基于 SCI 的系统上运行的软件必须明确或隐含地了解系统提供的内存一致性模型。
使用 I/O 总线作为连接点的系统大多是分布式内存系统,每个节点运行自己的操作系统实例。这类系统(如基于 SCI 的系统)能够提供共享地址空间编程模型,一个进程的部分虚拟地址空间可以对另一个节点上运行的进程可见。与传统的分层 ISO/OSI 模型相比,该模型概念简单。两个不同节点上的用户级进程要进行通信,只需将相同的 SCI 共享内存段映射到各自的虚拟地址空间。出于性能考虑,SCI 共享内存总是物理地位于接收方。发送方进程将数据写入远程内存段,接收方从本地内存读取数据,无需系统调用或昂贵的协议处理。
然而,这种共享地址空间模型也存在问题。其中间件必须明确了解底层的内存一致性模型,该模型受处理器、I/O 桥、SCI 适配器和 SCI 互连结构等硬件组件特性的影响。例如,为提高
超级会员免费看
订阅专栏 解锁全文
42

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



