CXL从纸上谈兵到实际应用

尽管已经推出了 3.0 版本,但使用 Compute Express Link(CXL)协议的工作负载仅在最近才开始逐渐适用于生产环境。

自2022年8月发布 CXL 3.0 以来,有一系列产品公告,这标志着 CXL 协议的不断发展,但实际部署仍然初具雏形。

Microchip Technology 数据中心解决方案业务部门的技术员工工程师 Sanketh Srinivas 在接受专访中表示,该公司目前正在向客户提供其 2.0 版本的样品,并计划在今年晚些时候进入生产阶段,这与其它行业厂商的计划保持一致。

Srinivas 指出:“目前,大多数其它公司和竞争对手都专注于 2.0 版本的芯片开发,并正在开发 3.0 版本的设备,以提供额外的功能。”

CXL 2.0 的额外容量和带宽将有助于处理伴随着人工智能(AI)和机器学习(ML)工作负载而来的大量数据,通过降低与存储相关的延迟,因为数据集不再需要来回传输。Srinivas 补充说:“CXL 允许扩展内存容量,将整个数据集存储在内存中。”

他解释道,由于人工智能引擎、机器学习引擎甚至 CPU 都可以低延迟访问内存中的数据,因此数据的提取时间大大缩短。

Microchip 的 CXL 准备就绪的 SSMC 2000 控制器已经集成到 Micron Technology 开发的内存模块中。这不仅支持高达 1TB 的内存容量,还能够处理整个数据库,Srinivas 坚信这将显著提高数据访问性能。

然而,Srinivas 指出,CXL 面临了“先有鸡还是先有蛋”的问题。去年,超大规模计算和集成商对 CXL 表现出极大的兴趣,但当时还没有准备好的 CXL 设备。现在已经提供了样品,他说,可以着手开发应用程序并看到 CXL 技术如何真正有助于提供额外的内存容量和带宽。

CXL 2.0 平台预计于 2024 年推出

Micron 的计算和网络业务部门高级总监 Ryan Baxter 指出,就 CXL 技术而言,目前仍然处于早期阶段,相当于比赛还未进行国歌演奏,更不用说第二局或第三局了。除了与 Microchip 的合作,Micron 最近推出了一款符合 CXL 2.0 标准的内存扩展模块。他强调,截至目前,客户对公司的 CXL 解决方案的反馈是实施非常简单。

Baxter 还提到,客户对他们所观察到的延迟非常满意,即使只有几十纳秒的差异,而不是几千纳秒。“我们对客户目前的应用方式感到非常兴奋。”

Micron Technology 最近发布了符合 CXL 2.0 标准的内存扩展模块

他指出,今年八月在 2023 年的闪存峰会上展出了一些支持 CXL 的开发板,而 Micron 已经在实际工作负载中投入使用。“尽管如此,现在仍然是非常早期的阶段。”

Baxter 表示,他预计一些客户将能够在 2024 年推出具备 CXL 2.0 功能的平台。“我们现在刚刚看到具备 CXL 能力的硬件。”

除了 CXL 产品,Micron 还推出了一个推进计划,为那些考虑使用 CXL 技术的人提供了一个一站式服务,提供关于热模型、性能模型以及实际工程的指导,以帮助他们在其系统上启用 Micron 的 CXL 设备。

在实际工作负载方面,Baxter 表示,CXL 在用于内存数据库和在线交易时表现出良好的性能指标。“这为我们提供了一些线索,表明这些是真实世界中可能从 CXL 中受益的用例。”

他解释说,任何需要更多内存容量和带宽的应用,例如 AI 训练和推断,都可以从 CXL 中受益。“AI 是一个带宽需求巨大的应用,”他说。

超大规模计算(Hyperscalers)率先采用CXL

Rambus数据中心产品副总裁Mark Orthodoxou表示,即使已经宣布了许多产品,包括将在今年晚些时候投入生产系统的Retimer转接卡,他也看到了CXL采用的相似曲线。他解释道:“OEM厂商正在自行构建这些服务器,他们已经开始尝试使用早期版本的硬件。”

Orthodoxou补充说,OEM厂商的最终客户仍然没有充分掌握技术,无法明确建立其价值主张,因此概念验证周期现在才开始加速。

他指出,超大规模计算公司略有不同,因为他们对工作负载有着清晰的了解,因此在这一领域会有更早的应用。他解释说,超大规模计算公司对于实施CXL解决方案的总拥有成本有着清晰的认识,尽管他们不愿公开讨论这一信息,将其视为商业机密。

Orthodoxou还指出,超大规模计算公司更能控制CXL的实施方式,他们更早地获取芯片和软件。然而,如果您只是订购一台内部具备CXL功能的服务器,您的控制权将较少。

在实际工作负载和部署方面,Orthodoxou表示,一个重要的区别是,一些服务器具备CXL能力,而另一些服务器已部署了CXL连接内存,它们将具有不同的采用率。他指出,像SAP-HANA这样的内存数据库是早期采用CXL技术的明显选择。

CXL解决方案是一项协作成就

CXL的特性在于可组合性,而负责监管协议规范的CXL协会并不是唯一一个汇集行业参与者、共同探讨如何构建系统并优化资源利用的组织。

去年秋季,开放计算项目(OCP)基金会宣布成立了可组合内存系统子组的小组,该小组由数据中心运营商、应用开发者以及设备和半导体公司组成,旨在建立相应体系结构和命名法规范,并将其作为可组合内存系统规范的一部分发布。

作为将重心从Optane技术转向CXL的一部分,MemVerge最近与SK Hynix和三星合作,推出了其Endless Memory解决方案,其中包括首个CXL内存模块。Endless Memory项目解决了数据密集型应用中内存不足的问题。在接受EE Times采访时,MemVerge的首席执行官和联合创始人Charles Fan表示,内存不足可能导致内存溢出(OOM)崩溃或性能下降,因为需要进行数据交换。

Endless Memory 利用了 MemVerge 的 Elastic Memory Service 软件以及来自 SK Hynix 的 Niagara Pooled Memory System,使主机可以根据需要动态分配内存,以减轻内存不足(OOM)错误并提高应用程序性能

Endless Memory采用MemVerge的弹性内存服务软件以及来自SK Hynix的Niagara Pooled Memory System,使主机可以根据需要动态分配内存,以减少OOM错误并提高应用程序性能。

与三星的合作还涉及XConn,该公司提供了行业首个CXL交换机,以及H3 Platform,该公司在一个2U机架式系统中集成了硬件和软件组件,具备2 TB的内存容量,可以动态分配给计算主机。

Fan表示,CXL硬件的可用性越来越近,这使得像MemVerge这样的软件开发商能够开发和测试支持弹性内存池的解决方案。“软件在这里的作用是支持CXL功能的关键要素,”他说。

他解释说,OOM问题在运行分布式工作负载,如AI训练、数据处理和扩展型数据库时是一个常见问题。“很难预测每个节点的工作负载。一些节点可能会使用比其它节点更多的资源,”Fan说,并补充说,较重的负载可能导致性能下降或系统崩溃。

软件实现内存池化和分层

Fan表示,无尽内存可以预测节点何时可能会耗尽内存,并自动从内存池中提供额外的内存。只要内存池中还有剩余内存,节点就永远不会耗尽。“这是一种动态的内存分配和取消分配过程。”

MemVerge的另一个解决方案,名为Gismo项目(全局无IO共享内存对象,Global IO-free Shared Memory Objects),也实现了CXL功能。根据Fan的说法,通过引入该公司声称是世界上首个基于CXL的多服务器共享内存架构,Gismo消除了网络I/O和数据复制,从而提高了分布式应用的性能。他说:“每当有任何东西超出内存并通过I/O时,由于序列化,事情会降低几个数量级。”

通过在多个服务器之间实现实时数据共享,Gismo消除了对网络I/O的需求,减少了数据传输延迟。Fan说:“您基本上可以全速访问共享内存。这提供了另一种数据传输方式,以及通过直接内存访问进行共享。”

Fan指出,硬件供应商也认为软件在实现分层和共享方面不可或缺。他说:“这类似于操作系统使计算机正常工作。”

与此同时,分层和共享对于实现分布式计算至关重要,分布式计算又能够支持AI工作负载。在接受EE Times的独家采访时,Elastics.Cloud的Bill Eichen表示,每个人都可以使用每个人的内存的分布式架构是至关重要的。

Elastics.Cloud 的 CXL 交换机能够连接分布式架构中的内存模块,克服了像 SAP-HANA 这样的内存数据库所遇到的限制,而无需增加更多的计算资源

通过共享和池化,可以实现非集成式的机架。Eichen说:“我们在一个系统内有多个服务器刀片,它们共享其它所有人的内存。”

一年前,Elastics.Cloud演示了他们声称是具有CXL的第一个对称主机到主机内存池的配置,其中两台配备FPGA卡并运行Elastics.Cloud IP的CXL启用服务器通过网线连接了CXL接口。

Eichen表示,这种配置允许第一台服务器不仅访问其自己的直接附加内存,还可以扩展位于同一台服务器中的CXL附加内存,以及第二台服务器中的CXL附加内存。与此同时,配对的第二台服务器可以访问其自己的直接附加内存,其自己扩展的CXL附加内存,以及第一台服务器的CXL附加内存。

DRAM优化在前,SSD在后

Eichen指出,CXL的最直接应用是扩展内存。Elastics.Cloud的交换机能够解决像SAP-HANA这样的内存数据库所面临的限制。他强调,尽管不需要额外的计算能力,但目前为了添加更多服务器,需要使用RDMA连接。然而,Elastics.Cloud的交换机可以直接连接内存模块。

此外,Eichen补充说,现在大家都在积极探索CXL技术,尽管当前市场的现实是一切仍处于2.0和1.1的阶段,3.0版本仍在未来。“你将看到大多数PCIe制造商将会推出CXL设备,”他说。

Eichen解释,最终,CXL将成为主流,因为它建立在现有的传统标准之上,实现的是渐进而非革命性的发展。

如果将内存扩展用于内存数据库是CXL工作负载中的顶层任务,那么SSD则位于底层。Phison的Sebastian Jean表示,目前还没有看到将SSD整合到CXL中的解决方案。“有一种说法叫做贪多嚼不烂,”他说。“我认为这个行业还没有准备好将SSD纳入整体解决方案。”

Jean承认,长期来看,CXL路线图中确实有SSD的位置。“大型语言模型将推动我们朝这个方向发展。”

眼下的关键是将CXL发展成为一个可扩展且可用的功能。“CXL的基本价值主张在于DRAM的扩展速度有限,主板上的DDR通道数量也受限,”Jean说。“对于那些需要更多资源的应用,CXL提供了解决方案。”