MemVerge 认为 PB 级内存池将随 CXL 而来
MemVerge 联合创始人兼首席执行官范承工认为,我们正在迈向一个可以达到 PB 级的由 CXL 连接的大内存池的时代。CPU、GPU 和其他加速器之间实现高效、高速的互联,将可访问大量内存数据集,最大限度地减少数据移动并加快计算速度。
MemVerge 提供了 Memory Machine 软件,这是一个抽象层,它融合了 DRAM 和 Optane 存储级内存等,使应用程序能够完全在内存中运行并避免大量的存储 IO。范承工在笔者上个月的专访时表示大内存池的时代即将到来。
他说,大内存池概念的主要驱动因素是内存到 CPU 之间的瓶颈。CPU 和内存插槽数量的限制和每个 CPU 对应的内存容量的限制是导致这种瓶颈的原因。接踵而来的问题是,在处理数据时,必须将数据发送到 GPU,就像直接图形处理器(GPUDirect)那样。如果 CPU 和 GPU 可以共享一个内存池,那么数据就可以保持在原来的位置,而不用浪费时间将数据发送到 GPU 然后再将数据返回。
这种大内存池未来很可能由 Compute Express Link(CXL)总线互连实现,这是一种基于 PCIe 第 5 代标准的总线协议。范承工对此表示:“CXL 总线互连的出现将会是大内存时代到来的一个拐点。”
他引用了英特尔技术创新总监 Jim Pappas 在 4 月举行的 SNIA 持久内存和存储峰会上的一些讲话内容。Pappas 在峰会上说傲腾 3D XPoint 存储级内存和 CXL 是天作之合。在未来两三年内,英特尔将在傲腾系列产品上增加 CXL 互连。因此,任何具有 CXL 互连功能的处理资源都可以访问它的容量,例如,非 Intel X86、Arm、FPGA 和 GPU 等。
范承工说:“在未来 2-3 年内,我们将看到两、三个具有 CXL 接口的存储级内存(SCM)产品投入生产,它们比 DRAM 具有更大的容量,而成本更低。”
大牌供应商
哪家厂商会来做这件事呢?范承工说:“我们有保密协议约束,他们也没有公开宣布任何事情。很可能会是英特尔和美光这样级别的老牌公司。”
这可能暗示是三星、海力士,也可能是东芝存储、西部数据。但是不管最终是哪家厂商,MemVerge 都会支持他们的 CXL 互连技术。
范承工认为内存技术将分为三类:靠近 CPU 的内存、主内存和远内存:
另一种方法是通过连接技术查看此结构中的前三层:
三层内存方案
在范承工看来,靠近 CPU 的内存将使用 HBM (High Bandwidth Memory)以及它的快速和高带宽插入器连接到 CPU。而对于 DDR 插槽连接来说,扮演这样的角色速度太慢了。他说,增加 CPU 中的内核数量必然需要增加 CPU 到内存的带宽,而 HBM 非常适合:“HBM 将变成一个缓存层。”
他还说,DDR DRAM 内存通道的连接器中有 300 个针脚。这导致主板上的布线非常复杂:“如果换成 CXL 总线连接,在提供相同的带宽的前提下,每个通道只有 80 个针脚。”这将使连接变得更加简单。
CXL 总线支持服务器之间的互连。现有的 DDR 内存通道做不到这点。这可能会:“允许出现许多 PB 级的内存池-真正的大内存…计算到内存的冯·诺依曼瓶颈将得到修复。”
它还修复了内存到存储的瓶颈,因为你“可以将大部分数据保存在内存中,而不是在存储层中。数据不需要再移动。真正的大内存将在未来三到五年内从根本上改变一切。”
主内存将是 DDR4 和 DDR5 插槽连接内存。远内存将主要是 CXL 连接的存储级内存(SCM),带有一些 DRAM。他的理由是什么呢?CXL 有几百微秒的延迟,对于 DDR DRAM 来说太慢,但是对于 SCM 来说是完全可以的。他预计在 2 到 3 年内服务器将可以访问 100TB 或更多的 CXL 总线互连内存。
CXL 互连已经来了
三星刚刚展示了一款 CXL 总线连接的 DDR5 内存模块,它可以提供高达 1 TB 的容量。该模块具有内存映射、接口转换和错误管理技术,使 CPU 和 GPU 能够将该 CXL 总线互连内存模块当作主内存来使用。
当然,应用程序和三个内存层之间需要有一个软件层。软件将弥补 DRAM 和 CXL 内存之间访问速度的差异,并使用 CXL 连接的 SCM 的非易失性来对数据进行保护。这样就可以使用将 DRAM 内容快照(也可称为 checkpoint)到 SCM,并定期写入存储的方法以获得长期保护。如果出现问题,可以让 SCM 快速回滚到以前的时间点。
这个软件层将使现有的应用程序能够在 DDR-DRAM 和 CXL 内存相结合的服务器环境中运行,无论该服务器是裸机、虚拟化的还是容器化的。
范承工认为 MemVerge 的 Memory Machine 软件就是这样一个软件层。其理念是,它将使应用程序能够将 DRAM 主内存和 CXL 远内存作为一个完整的资源来处理。他告诉我们,将为 CXL 内存池提供快照等数据服务。另一个服务是两个超大内存之间的远程故障恢复。这将使用异步后台复制过程将快照数据移动到第二个系统。
第三种选择是将快照数据移动到存储系统或 S3 云存储器中:“然后你可以检索状态并在任何地方重新启动该应用程序。它是一种状态的实例管理,数据移动可能需要 15 分钟,在后台进行,不会影响主系统。”
他说:“我们捕获整个应用程序状态,而不仅仅是数据状态。这是一个类似于快照镜像的过程,”这样的快照层现在可以多达 256 个。
评论
虽然 MemVerge 有在为自己的技术做广告,但是范承工所说的抽象层的需求很有意思。将不相交的内存池和存储级内存池表示为整个逻辑内存资源来看是有意义的。如果他所说的主要半导体内存和存储级内存厂商能够在 2023-2024 年期间开发出自己的 SCM 产品并且用 CXL 总线互连的傲腾产品能够实现的话,那么我们基于当前服务器的应用程序环境将发生重大变化。
评论