演讲人:李锴 演讲单位:中国移动研究院 在Chiplet条件下,Intel、AMD、Arm、Hygon等处理器的核心数量不断增加,通用服务器算存比没有大幅波动情况下,对服务器内存容量需求大幅提升; 图片来源:Intel 图片来源:AMD IntelSapphireRapids提供多达60个内核,120线程,8个内存通道AMDGenoa提供多达128个内核,256线程,12个内存通道 不断增加的核心数量进一步提升了算力能力,与此匹配的服务器内存需求也同步匹配 •新一代人工智能依赖数据、算法和算力,然而,当前AI硬件的算力增长远远超过内存发展速度,导致原有内存的分层架构效果无法完全满足现在业务需求; •在边缘场景下,海量、高维模型、稀疏特征数据需要强大的内存支持系统来实现更好的在线推理能力; 在大模型的训练和推理场景,GPU/AI卡的显存或内存容量不足,呈现出明显的「内存墙」问题。 这些数据的高维、稀疏特征又为计算和存储带来了很大的挑战,隐藏层大小可能就是数百万的量级,总参数量甚至能达到十万亿的量级,对显存/内存需求大 训练、推理场景在应用需求对大内存迫切性增加 •需要通过芯片层级的架构改进来缓解内存墙瓶颈,例如将内存堆叠在逻辑芯片上,使内存更靠近处理器,从而更近、更快且更容易访问数据,无论在是通用计算还是智算都殊途同归; 传统计算架构芯片级共封装 加速器 处理器 内存 同封 同封 加速器 内装存 处理器 内装存 内存 来源:TSMC 芯片内部正在使内存更接近逻辑和加速器,内存将不是通过PCB连接的,而是放在封装之中,CPU和加速器的速度更快、性能更高 来源:AMD来源:NVIDIA •面向大模型的训练、推理场景,单机8卡已经不能单纯作为单台服务器的边界,需要构建更大型的超级计算机提高计算效率和能力,通过实现计算架构的改进,以确保其满足算、存要求,使数百级别处理器进行总线级互联; •做为另外一种“先进的封装技术”,其规模已扩大至数据中心,总线连接可被视为中介层; Server1 内存a-b处理器 加速器 Server2 内存b-c处理器 加速器 Server3 交换机、路由器 Server4 内存c-d 处理器加速器 内存d-e 处理器加速器 SuperServer(S²) 实现总线互联的数据中心“先进封装” 内存a-e处理器加速器 总线 总线 内存a-e处理器加速器 内存a-e处理器加速器 总线 总线互联 总线 内存a-e处理器加速器 传统数据中心S²架构数据中心 •当前业界有多种通过总线技术实现拓展带宽的技术,并将CPU、GPU、存储介质等异构部件实现全连接,增加缓存一致性、纳秒级时延、百处理器级别的技术能力,力争通过总线技术将大规模的存、算融为一体; •PCIe/CXL、Nvlink、CCIX、AMBA等技术正在加速演进; 总线协议 CXL/PCIe5.0 NVLINK4.0 速率 PCIe5.032GT;PCIe6.064GT; 100Gbps; 开放性 开放 封闭 •中国移动正在密切探索包括CXL在内的多种总线技术,目的统一异构部件的算力和存储资源,实现大带宽芯片连接; PCIe连接CXL连接 •当总线可以实现多种应用场景,从现实需求的优先级来说,建议在构建统一内存池和GPU/AI芯片层级的总线互联进行同步推进; •内存池可以实现处理器和内存设备之间的缓存一致性访问,扩大内存容量和带宽; 本次项目关注点 推进总线互联的内存池推进GPU/AI芯片层级的总线互联 Server Server Server 计算总线 总线Switch 总线Switch 总线Switch 总线Switch 多Server共享存储资源 多Server共享存储资源 N .. . 5 4 3 12 N .. . 5 4 3 12 0 0 总线 Switch 总线 Switch 总线 Switch 计算总线 总线Switch 总线Switch 总线Switch 总线Switch 012345 .. . N 012345 .. . N 一组有N张GPU/AI卡 一组有N张GPU/AI卡 更灵活的存储结构更高效应用开发更多样的存储介质更低延迟的内部通信更高效的数据读写更灵活的拓扑连接 通过探索包括CXL在内的总线级内存池;新型总线的卡间互联模式,形成技术突破和应用 •Type1:主要用于连接处理器和SmartNic等加速器,以提高处理器的转发效率性能; •Type2:主要用于连接处理器、GPU等加速器和内存,以提高多处理器对内存的使用,提升多处理器协同效率。 •Type3:主要用于连接处理器和扩展内存,以满足内存带宽和容量的拓展 DDR 主机 DDR DDR CXL.io CXL.cache SmartNIC 加速器 Cache Type1 DDR 主机 DDR DDR CXL.io CXL.cache CXL.mem GPU/AI HBM 加速器 Cache HBM HBM Type2 DDR 主机 DDR DDR CXL.io CXL.mem Expandor 加速器 Cache SSD SSDSSDSSDSSD Type3 允许加速器访问和缓存主机连接的DDR内存允许加速器访问和缓存主机连接的DDR内存 允许主机访问加速器的易失性(RAM)和持久性非易失性(闪存)存储 允许主机访问加速器的易失性(RAM)和持久性非易失性(闪存)存储 •提供新型计算模型的解决方案,为云计算和数据中心提供更高的数据速率、更高的带宽和容量 •适用于多种类型存储器的通用标准接口,可以为系统灵活的利用DRAM、LPDDR等不同内存介质 性能增强 (a)非总线场景 附加到CPU 寄存器 CacheDDR 1ns CPU DRAM DRAM DRAM DRAM DRAM DRAM DRAM DRAM 10ns 100ns 独立于CPU 磁盘 通过总线技术实现拓展Memory NVMeSSD 容 250ns量 大 增 400ns 10-40us CPU CXL等 DRAM DRAM LPDDR NVMe DRAM … 内存技术 (b)总线场景 HDD 可以灵活地添加各种内存,而不会影响本机连接的DIMM 内存可以针对系统成本、容量、功率、带宽进行独立优化 3-10ms •以CXL等总线级技术不仅提供了高速传输,还支持内存共享和虚拟化,使设备之间的协作更加紧密和高效。 01 带宽 内存带宽提升 •当前CXL基于PCIe5.0接口,支持32GB/s的双向传输速率; •通过利用主机处理器通过总线连接到各种内存接口来实现内存介质独立性; •内存控制器可以设计为支持不同的内存类型,DDR4、DDR5甚至持久内存或存储类内存; 02 多样 多样性存储介质 •运行程序可在持久存储中,服务器断电内存数据不丢失; •总线级互联可直接连接CPU和设备,共享内存空间,避免了多个接口之间的通信开销; •可实现内存扩展和内存共享,包括非易失性存储介质,使得业务可以快速恢复; 03 成本 内存成本降低 •通过内存扩展器(MemoryExpander)来增加DRAM的容量,可以在不改变系统结构的情况下,提高内存的可用性和灵活性。 •内存控制器提供的灵活性为提供比传统DIMM更精细的容量粒度提供了选择,允许系统实施者调整内存容量以适应其应用并降低成本; •通过带宽提升、多样性存储介质有助于满足现代数据中心对大规模处理和分析的需求,同时也能够为AI、机器学习等新兴应用提供更好的支持,从整体上降低TCO •总线级互联可以在本地系统内实现内存扩展,实现允许跨多个主机池化/共享内存,增加Switch架构后可实现更多主机内存的池化; •当前利用CXL是实现总线在内存池化的有效方法之一; 主机CPU 总线Link 总线内存扩展器内存控制器内存 主机主机01 主机主机23 主机主机01 主机主机23 主机5 一、本地内存 总线Links 内存控制器1 MultiPort内存扩展器 内存控制器2 二、内存池化 总线Links 总线Switch 总线Switch 总线Links 主机4 总线Links 总线Switch 内存控制器 总线Switch 内存控制器 总线Links 主机6 主机7 三、Switch的全内存池化 •在用户空间,总线连接的优化包括利用用户级驱动程序,最大程度发挥总线的高带宽和低延迟特性; •在内核空间,需实现高效的内核模块,以确保CXL设备的无缝集成和高性能操作; •对于BMC,应加强安全机制,确保总线在数据传输的安全性,同时整合远程监控和故障诊断功能以提高管理效率。 BMC管理 硬件层 软件层 API •配置管理; •探测技术; CXL应用层软件优化 •用户调用、调度 •cxl相关的lib库 CXL内核空间 •cxlEventMgt是一种用于管理CXL事件的软件组件,EventMgt还提供了一种机制,用于将事件传递给其他CXL驱动程序或内核组件; •cxlPrimarymailbox软件接口; •CCI接口,提供接收cxl命令 WebUI •配置、事件、日志; •监控; CXL lib库 主机 BMC PCIe I2C •CXLType3•CCI userspace MCTPDriver、I2CDriver Primary/Secondary/OOBCXLType3CCI I2C/PCIe/CXLDriver PCIe物理层Driver CXL内核空间 •cxlEventMgt •cxlPrimarymailbox软件接口; •CCI接口,提供接收cxl命令 kernel •利用CXL等总线级技术提供内存拓展、分层、池化等多种能力,推动形成内存架构优化机会,实现内存即服务的能力; •在拓展、分层、池化等多个层面进行优化,提供统一的MaaS服务能力; 内存扩展 内存分层 内存分层将cache、DRAM、NAND等多种存储和计算资源进行有效整合,提高数据处 理效率。 近存计算 持久内存 非易失持久内存利用持久内存介质来实现数据的持久性存储,同时通过CXL协议与处理器进行连接和访问。 Memoryasaservice 在CXL技术中,"MemoryasaService"是一种内存服务模式,允许内存资源在多个处理器之间动态分配和释放,提高 内存的资源利用率,降低TCO, 内存扩展提供了更高带宽和更 近存计算可通过CXLEP就近对CXL内存中的数据进行距离 内存池化 增加灵活性和可用性。 大容量的内存解决方案,提供了存储资源扩展。 计算,把计算结果送到本地内存中,这样减少数据传送。 内存设备连接在一起,实现缓存一致性、低延迟和高带宽的数据传输。 总线级内存池化架构设计 总线 共内存新池化 •内存池化架构的组成和功能 •内存池化架构的接口和通信协议 •内存池化架构的数据管理和调度策略 总线级内存池化服务器实践 •根据服务器拓展内存池系统需求,细化内存池方案设计; •对内存池与整机进行适配调优; 总线层级内存池化架构设计原则 •可扩展性原则 •性能优化原则 •优先基于在CXL等总线协议分解内存需求,将内存资源从单个服务器中进行解耦,并在多服务器之间动态分配和共享。这种模式可以提高内存资源的使用效率,增加内存的利用率、灵活性和可用性; 总线级内存池化服务器设计要求 •服务器硬件架构要求 •服务器拓展expander规格等要求 •制定总线级内存池化服务器设计标准 希望联合整机、部件、芯片、应用等相关单位,一同推动总线级内存池化架构设计规范,为计算产业转型升级助力;