Compute Express Link

快速计算链接（Compute Express Link，简称CXL）是一个开放标准，其高速互联技术可以为高性能数据中心计算机提供高速、大容量的中央处理器（CPU）至设备，CPU至内存，及设备至设备的连接。CXL作为一种高速串行协议，基于PCI Express（PCIe）的物理和电气接口构建。CXL包括基于PCIe的块输入/输出协议（CXL.io）以及用于访问系统内存（CXL.cache）和设备内存（CXL.mem）的新缓存一致协议。串行通信和池化能力允许CXL内存克服常见DIMM内存在实现高存储容量时的性能和插槽封装限制。CXL还可以帮助高性能计算提升内存容量、内存带宽并降低I/O延迟。

历史
CXL技术主要由英特尔开发。CXL联盟于2019年3月由创始成员阿里巴巴集团、思科系统、戴尔EMC、Meta、谷歌、惠普企业（HPE）、华为、英特尔公司和微软组成，并于2019年9月正式成立。

2021年11月，Gen-Z联盟将其技术标准及资产转移至CXL联盟，便于开发唯一的行业标准。

2022年8月，OpenCAPI技术标准及资产也被并入CXL，进一步扩大支持CXL技术的公司和产品。OpenCAPI to Fold into CXL - CXL Set to Become Dominant CPU Interconnect Standard

协议
截止2024年，CXL标准目前支持以下三种协议。
 CXL.io – 以PCIe 5.0（及在CXL 3.0之后的PCIe 6.0）为基础并增加了一些改进。它可以将内存扩展到外部设备，并提供配置、链路初始化和管理、设备发现和枚举、中断、DMA和透过非一致性加载/存储进行的寄存器I/O访问。
 CXL.cache – 允许外围设备透过低延迟请求/响应接口访问和缓存主机CPU内存。当内存被缓存到外部设备时，CPU只需要在本地缓存中保留最常用的数据。
 CXL.mem – 允许主机CPU透过加载/存储命令一致性地访问缓存的设备内存，并且同时适用于静态随机存取存储器和动态随机存取存储器。透过把外部设备作为主内存使用，CPU可以在内存故障的情况下继续运行。

设备类型
CXL目前支持三种设备类型：
 Type 1：主要用于没有本地内存的加速器，比如网卡。透过PCIe与现有系统集成，并透过CXL与CPU直接通信。
 Type 2：主要用于更为通用的加速器，比如GPU，ASIC和FPGA。这类加速器通常具有GDDR或高带宽存储器的本地内存。主CPU可透过CXL直接访问设备的本地内存。
 Type 3：可以用于内存扩展板和持久化内存，与主机处理器直接通信，并且可以使用 CXL 协议来实现低延迟、高吞吐量的数据传输。

应用
CXL早期主要用于数据中心和高性能计算等场景。随着人工智能领域模型开发对内存的需求不断提升，CXL使GPU和FPGA等加速器与CPU更高效的协作，进而提高人工智能模型训练和推理的速度。

参考文献

Category:串行总线