- CXL体系结构:高速互连的原理解析与实践
- 李仁刚 王彦伟 黄伟主编
- 1058字
- 2025-04-17 19:00:41
1.2 相关互连协议的提出
近年来,为了解决计算系统中CPU与加速器间的一致性访问问题、I/O墙问题,一系列高速缓存一致性互连协议标准陆续被提出。表1-1展示了相关互连协议的对比。
表1-1 相关互连协议的对比

2014年,IBM、AMD和赛灵思(Xilinx)等公司联合发布行业标准设备接口OpenCAPI,这一接口支持处理器以标准化高速串行、低延迟的方式与加速器设备连接,在IBM的POWER 9处理器系列中首次实现。OpenCAPI物理层采用IBM的Bluelink,通道单向传输速率可以达到25 Gbit/s,且能与NVLink复用。目前主要用于IBM POWER的主机与外围设备互连,范围比较有限。在拓扑结构上,OpenCAPI只支持与CPU直连的点对点结构,未实现对OpenCAPI Switch等功能的支持,无法实现跨任意拓扑和交换机的一致性维护,架构扩展能力受限。
随着人工智能等应用领域对并行计算结构的依赖,为充分发挥多GPU系统的计算性能,英伟达(NVIDIA)于2016年推出了一种总线及其通信协议——NVLink,以期提升CPU与NVIDIA GPU之间的通信带宽。第四代NVLink最多支持 18 条链路,双向传输带宽高达900 GB/s,这一带宽是PCIe 5.0 x16的7倍。同时,第四代NVLink允许CPU在读取数据时缓存GPU显存,从而能使处理器低延迟地收发共享内存池中的数据。NVSwitch可用于节点内GPU之间的多对多通信,其级联架构大大提高了GPU大规模扩展能力。但是,作为英伟达私有协议,NVLink除了实现NVIDIA GPU间高速通信,作为系统总线目前仅在IBM的POWER PC架构、ARM架构CPU中实现,尚未形成支持其他架构加速器的总线行业标准。
2016年,AMD、ARM和赛灵思等公司联合推出对称的缓存一致性协议CCIX(Cache Coherent Interconnect for Accelerator),让CPU之外的硬件加速器(例如FPGA、GPU等)也能以缓存一致的方式使用与多个处理器共享的内存,在异构系统中实现更快的内存访问。CCIX交换机(Switch)也支持多种灵活的系统拓扑。但是,作为对称的缓存一致性协议,CCIX交换机存在两方面的不足:一方面,设备设计的复杂性较高;另一方面,缺少用来协调和管理通信的中心节点,如果一个设备发生故障,可能会影响多个设备之间共享的数据和状态信息,导致系统不稳定甚至崩溃。在生态建设方面,目前产业界仅在ARM Neoverse系列CPU中实现了对CCIX的支持。
2016年,惠普(HP)等公司基于HPE The Machine项目中内存池化架构原型样机的研究,组成Gen-Z联盟,提出支持以内存为中心架构的低延迟总线协议Gen-Z,可以连接智能网卡、加速器(GPU、FPGA、ASIC等)、DRAM、SCM、闪存(Flash)等多种类型设备,支持计算单元对DRAM或SCM的字节寻址的加载/存储。内存语义(Memory Semantics)和Switch技术的实现,使得Gen-Z在资源扩展性及内存池化能力方面具有优势,可为数据中心提供高传输带宽和大规模扩展能力。但是,Gen-Z没有内置硬件维护缓存一致性,相应的软件开销较大。在生态建设方面,产业界尚没有支持Gen-Z的商用CPU以及硬件产品。