查看原文
其他

CXL赋能DRAM资源的可扩展性:解锁大规模数据处理的潜力

常华Andy Andy730 2024-03-16

Source: Tim Symons, DRAM Resource Scalability Enabled by CXL, Mar 28,2023

引言

计算机服务器架构不断演进,以支持更快速、更大规模的数据集用于分析应用。CPU和GPU的计算能力不断提高,以支持人工智能(AI)和机器学习(ML)等现代应用。随着处理器核心数量的增加,正在处理的数据量也越来越多,这就需要更大的内存容量和带宽。由于应用的多样性,CPU核心和内存需求因其内存利用率而异。系统供应商和管理人员面临的挑战是优化系统资源,确保有足够的内存来支持所有应用,同时避免内存超配和低利用率的问题。

CXL(Compute Express Link)是一种内存语义协议,利用最高性能的PCIe电气接口规范,为新一代平台提供可配置、可扩展、可共享的接口。引入CXL接口是实现扩展和资源共享的重要一步,通过增加内存和处理分配的灵活性,消除孤立的资源,并允许根据应用需求重新配置资源。

各种类型的处理器(包括CPU、GPU和加速器设备)通常实现了最新一代DDR内存接口,以实现DRAM内存的最高性能。CXL使得可以连接外部内存控制器设备,扩展可供处理引擎使用的内存资源,相当于增加了一层额外的内存。数据通过CXL传输到外部内存控制器,该控制器管理内存介质(通常为DRAM)的读写操作。CXL接口设计具有非常低的延迟,因此尽管性能低于本机DDR接口,但仍能提供可比较的性能。

通过CXL连接的DDR是一个主要应用,它允许根据需要添加或移除资源。CXL 2.0交换机可以在应用需求变化时重新连接和重新分配多种处理类型和内存设备,从而实现更大的内存资源部署,而无需担心在需要进行应用更改时无法充分利用。

外部CXL内存控制器的优势

虽然较新的内存技术(如DDR4/DDR5)可以满足延迟需求,支持3200MT/s和4800MT/s的速度,但增加直连DRAM接口的数量可以实现高性能计算(HPC)应用所需的每个核心的性能增加。这带来了几个系统设计挑战:DRAM接口需要大量设备引脚用于高速信号传输(288个),而电气距离(设备之间的距离)问题会导致布局和实际空间上的考虑,特别是处理器的紧密排列可能加剧局部功耗和冷却需求。而直接连接的内存虽然确保了最高性能,但缺乏灵活性,无法与系统中的其他处理器共享未使用的内存容量。

基于CXL的内存扩展

CXL接口经过优化,每个通道有16个32GT/s的通道,极大地减少了支持内存扩展所需的引脚开销,轻松支持DDR扩展所需的数据带宽。可以选择支持x8和x4通道宽度,以降低总体带宽,而CXL电气接口与PCIe Gen 5和Gen 6相同,确保了系统设计的可靠性和强大的通道传输距离。

CXL具有针对特定类型设备的三个协议。CXL.mem和CXL.cache是负载/存储内存语义协议,确保内存访问性能最低延迟。CXL.io用于设备管理、错误和状态报告,并基于PCIe事务。CXL定义了三种具有不同特性的设备类型:

  • 类型1:主机处理器

  • 类型2:具有处理、缓存和内存共享功能的设备

  • 类型3:内存设备

DDR内存控制器通常是类型3的功能,提供三个主要功能:高性能、容量扩展和部署的可扩展性。

使用基于CXL的内存控制器(其中CPU通过CXL接口与控制器连接,通过DDR接口与DRAM内存连接)通过16通道CXL接口可实现高达4GB/s的带宽,满足带宽要求。

CXL通过减少处理器端所需的引脚数量,降低了直连内存在DDR5速率下的信号完整性挑战和占用空间问题,并且同时满足了HPC应用的延迟需求。

CXL实现的成本效益

CXL使得具有内存扩展和共享的异构处理系统成为可能,有助于优化内存资源利用。通过CXL内存扩展,可以简化昂贵而复杂的多插槽CPU和内存解决方案,降低整体成本,并提高应用性能。

基于CXL的内存控制器解决方案提供了支持不同内存技术以管理成本和重用旧技术的灵活性。例如,DDR4内存在市场上仍然占主导地位,每比特成本低于DDR5。可以配置系统,使用高性能的DDR5直连处理器内存和DDR4扩展的CXL连接内存,并在以后升级的选项。

CXL内存允许处理器和内存设备之间的物理距离更大,有助于优化功率利用和更经济的热散热解决方案。更大规模的内存扩展(或解聚)使得可以共享和按需重新分配内存资源。

对于内存应用,CXL可能会使用DIMM(双列直插式内存模块)和 EDSFF(企业和数据中心标准外形)外形,因为这可提供最有效的密度和兼容性。采用通用外形可确保供应商之间的互操作性,并允许系统轻松升级或重新配置。

结论

基于CXL的内存解决方案为处理密集型应用(processing intensive applications)(如云计算、AI/ML、集群网络和HPC)提供了最佳的技术,它能够实现:

  • 增加多核处理器的内存带宽、容量和延迟需求

  • 共享和重新分配内存,减少未充分利用的资源

  • 实现异构系统以满足创新的AI、ML和神经结构应用需求

  • 通过易于采用和减少CPU核心数量,提供具有成本效益的解决方案

  • 提高热和功耗管理的可管理性

考虑在未来的系统设计中实施基于CXL的内存解决方案,以实现具有成本效益的内存扩展。

继续滑动看下一个
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存