(清华大学计算机科学与技术系 北京 100084)于2024年在《Journal of Computer Research and Development》(计算机研究与发展)上发表的综述性论文。论文的主题聚焦于以ChatGPT为代表的大规模深度学习模型(大模型)训练过程中,存储系统所面临的核心挑战以及相应的技术发展。本文旨在系统性地梳理和分析大模型训练对存储系统带来的独特需求,并对当前学术界与工业界提出的各类存储加速与容错技术进行分类、阐述与比较。
论文主要观点阐述
1. 大模型训练为存储系统带来了前所未有的挑战,传统存储技术已不适用。 论文开篇即指出,以ChatGPT、GPT-4等为代表的大模型参数量在短短三年内增长了数万倍,达到了千亿乃至万亿级别。这种规模的爆炸式增长,使得训练过程对存储系统的容量、性能和容错能力提出了极高要求。具体挑战体现在四个方面:首先,存储容量需求巨大,不仅需要存储海量的模型参数(Model Parameters),还需保存前向传播产生的大量激活量(Activation)以及优化器状态(如Adam优化器的一阶、二阶动量),三者共同构成了TB级别的存储负载。其次,独特的计算模式,大模型训练普遍采用分布式并行策略(如数据并行、流水线并行、张量并行),计算任务与存储数据之间存在紧密的依赖关系,传统分布式存储技术未能对此进行优化,易导致数据移动与计算不匹配,产生高昂的通信开销。第三,独特的访存模式,大模型训练的计算图相对固定,其数据访问模式具有很强的可预测性,而传统的异构存储技术未能有效利用这一特性进行数据预取和调度,导致高延迟的存储介质(如CPU内存、SSD)访问成为性能瓶颈。第四,频繁的数据更新与容错需求,大模型训练过程中参数频繁更新,且使用大量GPU硬件使得故障概率显著增加,传统的基于日志、多副本或纠删码的容错技术会带来巨大的I/O开销,严重影响训练效率。
2. 针对存储性能挑战,发展出了三类核心的存储加速技术。 为应对上述挑战,研究者们提出了多种存储加速技术,论文将其归纳为三类: * 基于大模型计算模式的分布式显存管理技术:该技术的核心思想是依据大模型分布式训练的计算任务划分(如层间并行、层内并行)及其依赖关系,来设计模型数据在GPU集群中的划分、存储和传输策略,从而最小化通信开销。论文详细对比了两种主流范式: * 基于层间并行的技术:以微软的ZeRO-DP和谷歌的GPipe、英伟达的PipeDream等系统为代表。ZeRO-DP在数据并行框架下,将优化器状态、梯度和模型参数进行分区存储,训练时通过高效的集合通信(如广播、归约)在GPU间按需移动数据,以扩展可训练模型规模。而GPipe、PipeDream等采用流水线并行,将模型按层切分到不同GPU,仅需在相邻GPU间传递激活量,通信量小,但对任务调度和流水线气泡(Bubble)处理提出了更高要求。论文通过对比表指出,ZeRO-DP模式更适合高带宽全互联集群,而流水线并行更适合通信带宽受限的集群。 * 基于层内并行的技术:即张量并行(Tensor Parallelism),以英伟达的Megatron为代表。它将单个层的计算(如矩阵乘法)在多个GPU间进行更细粒度的拆分(按行、按列或更高维度)。论文系统分析了1D、2D、2.5D和3D张量并行在参数存储开销、输入存储开销以及通信开销上的差异。例如,1D并行通信简单但需要冗余存储完整的输入;3D并行存储和通信开销都较低,但实现更复杂。Megatron针对Transformer架构的特点,对多层感知机(MLP)和注意力层(Attention)中的线性层采用了不同的切分策略(如对第一个线性层按列切分,对第二个按行切分),以在保持计算正确性的同时最小化通信同步。
大模型训练访存感知的异构存储技术:当GPU显存容量不足以容纳整个模型时,需要借助CPU内存(DRAM)甚至固态硬盘(SSD)等异构存储介质来扩展存储容量。该技术的核心是利用大模型训练访存模式可预测的特点,设计智能的数据预取和卸载策略,用计算时间掩盖数据在慢速存储介质间移动的延迟。论文根据使用的存储介质分为两类:
大模型数据缩减技术:通过算法手段直接减少需要存储的数据量。主要包括两种思路:
3. 针对存储容错挑战,发展出了两类主要的存储容错技术。 大模型训练作业周期长、硬件规模大,故障概率高。论文阐述了两类针对性容错技术: * 参数检查点技术(Parameter Checkpointing):定期将训练状态(包括模型参数、优化器状态等)保存到持久化存储设备(如硬盘)。这是最直接的方法,但其开销与模型大小和检查点频率成正比。在大模型场景下,频繁的全量检查点会带来巨大的I/O压力。 * 冗余计算技术(Redundant Computation):在多张GPU中重复计算相同版本的参数。当某张GPU发生故障时,可以从其他冗余计算的GPU中恢复数据,无需从持久化存储中加载。这种方法避免了频繁的I/O操作,但以额外的计算资源为代价。
4. 不同存储技术需根据硬件条件、模型特性和性能需求进行综合权衡与选择。 论文在总结部分通过一个流程图(图11)和对比表(表4),清晰地给出了技术选型的指导原则。关键决策点包括:GPU聚合显存是否满足需求、GPU间互联带宽与拓扑(高带宽全互联 vs. 低带宽非全互联)、模型单层大小、以及对训练成本、性能和精度的权衡。例如,在拥有NVLink的高速集群中,可优先采用ZeRO-DP或张量并行;在消费级GPU组成的集群中,流水线并行结合异构存储(如Mobius)可能是更优选择;当显存压力极大时,需引入激活量重算或混合精度训练;对于极致规模的模型,则需要SSD Offload技术(如Zero-Infinity)。在实际系统中,这些技术常常被组合使用,以在给定硬件约束下达到最优的训练效率。
论文的意义与价值
本文是一篇非常系统和前沿的技术综述,具有重要的学术价值和实践指导意义。首先,它首次从存储系统的视角,对大模型训练这一热点领域面临的独特挑战和解决方案进行了全面的梳理和分类,构建了一个清晰的技术框架(加速 vs. 容错,分布式显存管理 vs. 异构存储 vs. 数据缩减),有助于研究人员快速把握该领域的技术脉络。其次,论文不仅描述了各类技术的基本原理,还通过示意图、公式和对比表格,深入分析了其内在机制、优缺点及适用场景,例如对不同张量并行模式通信/存储开销的量化对比,以及对不同流水线并行方案在气泡、显存开销和收敛性上的详细比较,体现了论述的深度。最后,论文提供的技术选型指南对工业界构建高效的大模型训练平台具有直接的参考价值,帮助工程师根据实际硬件配置和训练目标,选择和组合最合适的存储优化技术。该文为计算机系统结构,特别是高性能计算和存储系统领域的研究者与工程师,理解并应对大模型训练中的存储瓶颈提供了权威的参考。