暂无图片
暂无图片
4
暂无图片
暂无图片
暂无图片

数据库管理-第297期 什么是CXL(20250302)

原创 胖头鱼的鱼缸 2025-03-01
803

数据库管理297期 2025-03-02

数据库管理-第297期 什么是CXL(20250302)

作者:胖头鱼的鱼缸(尹海文) Oracle ACE Pro: Database PostgreSQL ACE Partner 10年数据库行业经验 拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证 墨天轮MVP,ITPUB认证专家 圈内拥有“总监”称号,非著名社恐(社交恐怖分子) 公众号:胖头鱼的鱼缸 CSDN:胖头鱼的鱼缸(尹海文) 墨天轮:胖头鱼的鱼缸 ITPUB:yhw1809。 除授权转载并标明出处外,均为“非法”抄袭

胖头鱼的鱼缸_01.png
这几天零散的通过直播和公众号云看了一下今年的PolarDB开发者大会,我记不清这是我第几次在和PolarDB有关的会议上看到CXL技术了,加上之前写傲腾的时候也写到过Intel转头CXL的事情,还是挺感兴趣的,于是准备去了解一下。

1 背景

CXL,Compute Express Link,一种新型的高速互联技术。在了解CXL本身之前我们需要了解一些硬件背景:

  • 首先除了传统计算机主要在主板上构建的CPU与内存以外,在很多设备中都有内存,尤其是基于PCIe的GPU中有非常大的内存,在这些设备内部这些内存的传输效率是非常高的,但是各个设备之间是相对独立的的,内存之间的割裂带来了巨大的浪费、使用不便与性能下降。(通过下图可以简单知道即便是与CPU直连的内存与CPU内建缓存之间都存在巨大的性能差异)
    image.png
  • CPU核心数的快速增加,在不大规模扩增CPU内部规模,即不大规模增加单条内存容量、增加内存通道数、增加主板电路等的情况下,单颗CPU核心可以分配到的内存资源其实是在不断减少的。而随着计算压力、数据量的显著增加,CPU对内存的依赖却是不断上升的

2 CXL

CXL旨在提供更高的数据吞吐量和更低的延迟,以满足现代计算和存储系统的需求,解决CPU和设备、设备和设备之间的内存鸿沟。CXL作为一种高速串行协议,基于PCI Express(PCIe)的物理和电气接口构建。串行通信和池化能力允许CXL内存克服常见DIMM内存在实现高存储容量时的性能和插槽封装限制。CXL还可以帮助高性能计算提升内存容量、内存带宽并降低I/O延迟,提供极低延迟路径,用于主机处理器和需要共享内存资源的设备(如加速器和内存扩展器)之间进行内存访问和一致缓存。
类似的技术最出名的就是Nvidia的Nvlink,如果大家最近对DeepSeek有较为深入的了解也会知道Nvlink技术对多路GPU计算的提升是非常显著的。

3 CXL协议与设备类型

截至2024年,CXL标准支持3种基于PCIe 5.0 PHY 32GT/s的协议:

  • CXL.io 协议本质上是经过一定改进的 PCIe 5.0 协议,用于初始化、链接、设备发现和列举以及寄存器访问。它为 I/O 设备提供了非一致的加载/存储接口。
  • CXL.cache 协议定义了主机和设备之间的交互,允许连接的 CXL 设备使用请求和响应方法以极低的延迟高效地缓存主机内存。
  • CXL.mem 协议提供了主机处理器,可以使用加载和存储命令访问设备连接的内存,此时主机 CPU 充当主设备,CXL 设备充当从属设备,并且可以支持易失性和持久性存储器架构。

CXL有3种设备类型:

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

image.png

4 CXL & PolarDB

首先,通过CXL联盟官方网站(https://computeexpresslink.org/)可以看到,阿里集团是CXL联盟的理事单位:
image.png
本次PolarDB开发者大会也重磅发布(预发布)了基于CXL的版本,从片子来看,应该是扩展可用内存,期待其正式发布后带来惊喜。
3Z5A0549opq3499731750.jpg

5 CXL vs RDMA

从概念来看,CXL是通过本地方式加速各设备中的内存交互或者扩展CPU使用的内存池,进一步扩展单机的性能或提升性能密度。而RDMA则是跨机器实现内存间的告诉网络互联。我认为二者并非竞品关系,参考RDMA在基于Nvidia GPU的万卡集群中配合Nvlink的作用,CXL和RDMA的整合可以进一步提升需求大规模计算及大数据量场景下的整体性能。

总结

本期简单介绍了下CXL。
本期内容非常粗浅,有兴趣的可以到各大百科及CXL联盟官网查看。
老规矩,知道写了些啥。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论