在最近推出的96 核 Epyc Genoa CPU 的发布会期间,AMD 谈到了现代计算面临的最大挑战之一。在过去的几年里,处理器变得更强大的速度已经超过了为这些内核提供数据的内存子系统的速度。
“任何使用非常大内存占用的东西都需要大量带宽来驱动内核,”Gartner分析师蒂姆哈维告诉The Register。“如果你随机访问这些数据,那么你会丢失很多缓存,因此能够非常快速地提取数据将非常有用。”
这绝不是一个新现象,尤其是在高性能计算 (HPC) 工作负载中。The Next Platform一段时间以来一直在跟踪计算能力与内存带宽的增长比例。
但是,虽然转向 DDR5 4,800MTps DIMM 将使带宽比最快的 DDR4 提高 50%,但这本身并不足以满足AMD 的 96 核 Epycs。AMD 工程师不得不通过增加内存控制器的数量来弥补差异,从而将通道增加到 12 个。结合更快的 DDR5,Genoa 提供的内存带宽是 Milan 的两倍多。
该方法并非没有妥协。其一,添加更多通道需要为内存控制器分配更多芯片空间。还必须考虑一些信号注意事项,以支持连接到这些通道的更多 DIMM。然后是将所有这些 DIMM 物理安装到传统机箱中的挑战,尤其是在双插槽配置中。
正因如此,AMD 至少在接下来的几代产品中很可能会保持在 12 通道,转而依靠提高 DDR5 内存速度来提升带宽。
美光预计内存速度在 DDR5 的生命周期内可达到 8,800MTps。在 12 通道系统中,内存带宽约为 840GBps。
“DDR5 的性能会随着时间的推移而提高,但我们仍然会在可用内核和内存带宽之间存在巨大差异,并且很难满足它们的需求,”Harvey 说。
傲腾继续存在
虽然 AMD 解决该问题的方法包括将更多内存控制器物理地塞入其芯片中,并将更快的 DDR5 内存塞入系统中,但英特尔对Xeon Max CPU采取了不同的方法,它将为美国能源部长期延迟的 Aurora 超级计算机提供动力。
这些芯片以前称为 Sapphire Rapids HBM,在 56 核第四代 Xeon 可扩展处理器中封装了 64GB 的 HBM2e 内存,能够提供 1TBps 的带宽。
虽然技术上你可以完全脱离 HBM 运行芯片,但对于那些需要大量内存来处理大型自然语言模型的人来说,英特尔支持两种配置的分层内存,这让人联想到其最近被裁掉的Optane业务部门。
在英特尔的 HBM 平面模式下,任何外部 DDR5 都充当可单独访问的内存池。同时在缓存模式下,HBM 更像是 DDR5 的 4 级缓存。
尽管后者对于某些用例可能具有吸引力,因为它是透明的并且不需要任何软件更改,但 Harvey 认为,如果它的行为类似于英特尔的 Optane 持久内存,则 HBM 可能得不到充分利用。
“大多数时候,CPU 擅长在指令级别进行缓存;它们不太擅长在应用程序级别进行缓存,”他补充说,在平面模式下运行芯片可能很有希望,尽管这需要软件供应商的特殊考虑。
“如果你有一个大的 HBM 缓存有效地用于主内存,那么操作系统供应商,虚拟机管理程序供应商将比 CPU 更好地管理它,”他说。“CPU 看不到指令级别,而管理程序知道我将要在这个应用程序和那个应用程序之间切换,因此我可以将该应用程序预加载到 HBM 中。”
合封装 LPDDR
为了为其第一个数据中心 CPU 实现类似的高带宽,Nvidia 还将内存转移到了 CPU 上。但与 Intel 的 Xeon Max 不同,Nvidia 并不依赖昂贵的低容量 HBM 内存,而是使用 LPDDR5x 模块。
每个Grace Superchip都融合了两个 Grace CPU 芯片——每个芯片都有 72 个 Arm Neoverse V2 内核——通过芯片制造商的 900GB/s NVLink-C2C 互连连接。这些芯片的两侧是成排的 LPDDR5 内存模块,可提供 TB 的带宽和容量。
虽然很难确定,但我们最好的猜测是每个 Grace CPU die 都连接到八个 64GB LPDDR5x 内存模块,运行速度大约为 8,533MTps。这将为两个 CPU 芯片中的每一个计算出 546GBps 的带宽。
苹果实际上采用了类似的方法,尽管使用速度较慢的 LPDDR5 6,400MTps 内存,以在今年早些时候在 Mac Studio 中推出的M1 Ultra 处理器上实现 800GBps 的内存带宽。然而,Apple 这样做的原因与每核内存带宽的关系不大,而与为芯片的集成 GPU 供电有关。
对于 Nvidia 而言,与使用 HBM 之类的方法相比,该方法提供了一些明显的优势,最大的优势在于容量和成本。美光等供应商提供的 HBM2e 容量最高可达 16GB。这意味着您需要四倍于 LPDDR 的模块。
但根据哈维的说法,即使是这种方法也不是没有妥协。将内存靠近 CPU 封装上意味着您放弃了灵活性。如果你需要超过 1TB 的系统内存,你不能只是添加更多的 DIMM 到组合中——至少不是 Nvidia 的实现方式。
然而,对于英伟达这些芯片的目标市场来说,这可能仍然有意义,Harvey 解释说。“Nvidia 非常专注于具有特定需求的 AI/ML 工作负载,而英特尔则更专注于通用工作负载。”
CXL 还不是答案
AMD 的 Genoa 和英特尔的第 4 代 Xeon 可扩展处理器都增加了对 CXL 1.1 互连标准的支持。
Astera Labs和三星等公司早期实施该技术将允许新颖的内存配置,包括内存扩展和内存分层。
然而,目前,这些设备可用的带宽有限,这意味着它们在解决 CPU 和内存性能不匹配方面的作用有限。
AMD 的实施具有专用于 CXL 设备的 64 条通道。但是,由于这些通道的分叉方式,CXL 设备一次只能访问其中的四个通道。由于 CXL 1.1 基于 PCIe 5.0,这意味着每个设备的带宽限制为 16GBps。
“随着时间的推移,它可能会为内存带宽打开一些东西,但我认为最初的实现可能不够快,”Harvey 说。
随着未来几代 PCIe 的出现,这种情况可能会改变。互连技术的带宽通常会在每一代之后加倍。因此,通过 PCIe Gen 7.0,单个 CXL 4x 设备将拥有接近 64GBps 的可用带宽。
就目前而言,Harvey 认为 CXL 对于内存需求量大的应用程序最有价值,这些应用程序不一定对带宽或分层内存配置敏感。