生成式人工智能的突然爆红,除了给算力芯片提出了更高的要求以外,传统系统设计无法满足计算需求的缺点也愈发明显。
日前,专家在“2024开放计算中国峰会”上提到,在过去的发展中,内存和I/O的扩展能力已远落后于计算密度的增长,平均到每个核心的内存和I/O带宽更是持续下降。“而随着AIGC时代的到来,内存需求大幅增加,同时也产生了梯度数据聚合与分发等海量I/O通信需求。这个时候,就需要新的架构来缓解系统内存和I/O瓶颈,实现数据处理规模、并行处理能力和系统算力提升。”
而近年来推出的CXL,正在成为其中的一个答案。
CXL,前景可期
所谓CXL,也就是Compute Express Link。作为一种开放标准的高速互联协议,CXL的推出主要是要解决计算器件和内存之间的互联问题,旨在改善处理器与加速器、内存扩展设备等之间的通信。
从技术上看,CXL是通过现有的PCIe(Peripheral Component Interconnect Express)物理层传输信号,但在协议层面上引入了新的特性和改进,以显著提升系统中处理器、加速器和内存设备之间的数据交换效率和一致性,使得资源共享具有更低的延迟,减少了软件堆栈的复杂性,并降低了整体系统成本,为高性能计算和大规模数据处理提供了更为强大的支持。
自2019年首次发布以来,CXL在过去几年里已经演进到了CXL 3.1标准。在适用范围方面,也从一开始的仅支持有限功能,增加到对横向扩展 CXL 进行了额外的结构改进、新的可信执行环境增强以及内存扩展器的改进。
具体而言,CXL拥有以下三个关键特征:
统一的内存模型:
CXL支持三种协议,分别是CXL.io、CXL.cache和CXL.memory。其中CXL.io主要用于传统的I/O操作,与PCIe类似;CXL.cache和CXL.memory则提供了缓存一致性和内存访问能力,使得CPU与加速器或内存扩展设备之间能够共享和一致性地访问内存。这对于加速器(如GPU、FPGA)而言尤为重要,因为它们可以更有效地访问系统内存,而不必通过缓慢的I/O通道。
缓存一致性:
CXL允许处理器和外部设备(如加速器)共享相同的内存空间,并保持缓存的一致性。这意味着数据在不同设备之间传输时不需要频繁复制或同步,从而提高了性能。
高带宽低延迟:
通过优化的协议栈,CXL在维持高带宽的同时还能提供低延迟的通信。这使得其在需要快速数据交换的应用中非常适合,如AI加速、数据分析等。相比于传统的基于RDMA的分解内存架构,CXL可以实现纳秒级的低延迟,相比于NVDIMM的非易失性内存,其时延也低几个数量级。
“与其他互联协议不一样,CXL的关键差异点就在于其硬件支持cache coherency。”英特尔数据中心和人工智能集团至强客户解决方案事业部总经理李亚东在介绍CXL时强调。也正是因为具备这样的特性,CXL可以实现CPU与加速器或内存扩展设备之间能够共享和一致性地访问内存,真正实现机架级的分解内存解耦架构。“除了CXL协议最初设想的用于CPU-GPU互相以cacheline颗粒度互相访问对方内存并可缓存,CXL还能很好地解决LLM时代内存容量、成本、利用率等挑战。”李亚东接着说。
据负责维护CXL标准的CXL联盟介绍,如上图所示,CXL有三种典型用例。知名分析机构Yole更是乐观预期,到 2028 年,CXL 市场总收入将增长到 150 亿美元以上。其中,DRAM 将构成 CXL 市场收入的大部分,到 2028 年市场收入将超过 120 亿美元。除此以外,CXL 控制器和CXL交换机也将在市场中迅速发展。
有见及此,越来越多的厂商加入了CXL联盟,以抓住这个由服务器和互联新协议带来的新机遇。
产业链玩家,各出奇招
作为CPU产业龙头以及CXL的主要推动者之一,英特尔持续推进这项技术的进步和普及,公司是CXL spec的主要贡献者,同时也在Linux kernel里贡献了大量CXL相关的代码。第四代英特尔® 至强® 可扩展处理器支持CXL1.1,提供对Type1, Type2, Type 3设备(也就是大家期待已久的CXL内存扩展设备)的支持。在最新的至强6上,英特尔为CXL 2.0协议提供了支持,后续会有下一代新产品的持续支持和CXL技术迭代。
除了英特尔以外,作为方案提供商的浪潮信息,和软硬件全套应用部署及行业标准最大推动者之一的阿里云,也不遗余力地参与到CXL的推广中。
首先看全球领先的IT基础设施产品、方案和服务提供商浪潮信息。据了解,浪潮信息从2022年开始就推出相关的CXL产品,具体而言就是CXL1.1时代的内存远端扩展以及CXL 2.0时代的内存池化硬件等解决方案。当中,后者更是有望在未来的服务器应用中扮演重要的角色。
如前文所说,内存已经成为了当下服务器(尤其是AI服务器)的瓶颈。在这种情况下,自CXL 2.0时代引入的内存池化技术,就是一场“及时雨”。据介绍,该功能可以构建全局内存资源池,以此优化内存的总体利用率。而通过 CXL 交换机和内存控制器实现了“池化”后,内存资源的动态分配与回收也更方便。
浪潮信息内存池化项目负责人陈曦介绍说,从硬件角度看,这本身就是一个很难的技术,因为在实现过程中,需要考虑到互联的损耗、整机系统的统一管理以及资源的调度。从固件和软件的层面看,如何根据应用需求动态调度这些内存资源,让CXL的性能发挥到最优效果,也是需要重点解决的问题之一。所以针对内存池化应用,一定是靠软硬件协同设计实现,浪潮信息作为全球TOP服务器系统厂商,带领厂商及各个合作伙伴,持续探索先进技术,推动技术实践落地,让我们的数据中心更绿色、更高效、更智能。
基于领先的技术积累,浪潮信息也开发出了领先的内存池化原型系统,实现多主机内存资源池化与共享,最大支持8HOST主机共享访问内存资源池,支持百纳秒远端池化内存访问。当中,浪潮信息还开发出了业界首款CXL交换机。支持CXL2.0&CXL1.1单元,单节点最大支持32路32GT/s x16对外互连端口,聚合带宽达到4TB/S,支持任意上下行配置,支持direct mapping/pooling/sharing功能。
从下图可以看到,内存池化在多个应用场景中都拥有着无可比拟的优势。
来到阿里云方面,作为CXL联盟董事会成员,也是创始成员(阿里巴巴、思科、Dell EMC、Facebook、谷歌、慧与、华为、英特尔和微软)之一,阿里云全程参与了CXL协议的制定和迭代演进。阿里云超高速互联负责人孔阳表示,之所以如此看好CXL,是因为于服务器中不可或缺的CPU而言,这项技术能很有效地扩展内存带宽,同时还可以扩展内存的容量并具备实现内存池化共享的能力。
“随着数据越来越大,我们的计算节点核心节点越来越多,对于我们数据的处理能力需求越来越大。以内存来看,我们计算节点对于内存的带宽和容量的需求是不断提升的,这就催生一些针对于传统服务器或者当前CPU扩展的内存,CXL就为这种需求提供了一种解决方案。”孔阳说。据介绍,阿里在CXL方向上的研发一直走在业界前列,研发了一系列产品和技术,并联合多个业务方和合作伙伴进行了多个解决方案的探索;其中包含了Y-config共享内存验证系统,业界首个大容量CXL内存模组,以及业界首个CXL Switch系统等。阿里云在此基础上形成了支持CXL的通用计算服务器、CXL Switch软硬件系统、Alimemory(CXL Memory)、AliSCM(CXL Pmem)、Memory Box等较为完整的产品布局,并通过这些产品支撑起弹性,可编排的磐久服务器方升机柜级架构。阿里云认为只有通过从部件到机柜的软硬件结合整体技术能力,才能充分发挥CXL的业务价值,把握未来服务器架构的发展方向。
就拿阿里云推出的业界首个基于CXL Switch内存池的业务系统解决方案来说,该设计支持CXL扩展、池化、共享,通过CXL Farbic,对各类设备进行扩展。早在2022年云栖大会曾介绍该CXL方案的系统架构,并在2023年云栖大会展示了CXL Switch+ CXL Memory Box的硬件设备,是业界首家发布相关软硬件系统的云计算公司。该方案通过CXL Switch Box系统,提供大容量、高性能、灵活性强的池化内存系统,可搭载包括阿里自研持久化内存AliSCM、大容量CXL接口AliMemory等部件。
正是在阿里云这样的从协议到产品再到生态建设的成员推动下,CXL ecosystem近年的发展非常快。在过去的若干年里,阿里云同时对Gen-Z,CCIX,CXL等互连技术一直保持密切的跟踪,在判断CXL作为通用计算侧内存语义的统一协议接口后,就在CXL方向上持续投入保持业界领先的技术把控和产研部件研发。在芯片和硬件生态角度,阿里作为CXL协议联盟的创始会员,除了积极的参与协议的设计和规划,也大力地推动CPU、Switch和部件合作厂商支持CXL特性,目前业界对CXL1.1已经有产品化的部件,包括CPU、部件、retimer,连接器等。分别在24~25/25~26年,业界会陆续推出支持CXL2.0/CXL3.x的产品面世。
写在最后
不仅仅是英特尔的至强处理器,行业内其它厂商的CPU、switch、memory expander,和retimer等芯片产品也在陆续发布,同时也有ISV和OEM提供了CXL 内存扩展、内存池化等解决方案。而随着越来越多的生态合作伙伴加入,我们也期待未来CXL技术会有蓬勃发展。
例如在当前火热的AI时代,要更高性能的系统互连、内存、存储。CXL提供的内存语义和缓存一致性协议对于AI这类应用具有天然的优势。尤其是内存扩展、池化、共享等技术,英特尔正在与多个业界伙伴合作用于AI应用场景的解决方案。
不过,从上面的介绍中我们可以看到,当前的很多CXL应用都是围绕这Memory做文章,这其实可以理解的。因为需求太大,成本又太高,池化就可以最大限度地在容量、带宽和成本中达到更好的平衡。但是,从CXL的初衷看来,其推出的目标之一是解决计算器件本身之间的高速连接,解决CPU、GPU之间怎么进行高速交换以及高速交换中的数据和带宽问题。于是,推动CPU与加速器(如GPU、FPGA、AI专用芯片)之间的高速、低延迟通信的异构计算普及会成为CXL未来发展的要务。
总而言之,在CXL的推动下,高效率的数据中心成为可能,这项技术也将成为云计算、大规模AI模型训练、实时数据分析和边缘计算等应用的重要支柱。CXL也势必将在数据中心系统中扮演重要角色。
本文转载自:半导体行业观察