可控内存的管道并行
通过对 BPipe 技术在 GPT-3 和 LLaMA 模型上的性能分析以及对 BPipe 性能评估方法的引入,我们发现了 BPipe 在 GPT-3 和 LLaMA 训练上性能不同的原因,并提出了一种新的估算 BPipe 性能的方法。
Jan, 2024
引入 Breadth-First Pipeline Parallelism,这是一种结合了 pipeline 和 data parallelism 的新型训练策略,通过充分利用 GPU 和每个 GPU 上的小 batch size 的特性,以及完全分片的数据并行性,降低了训练时间、成本和内存使用。实验结果显示训练速度提高了 53%。
Nov, 2022
本文提出了一种基于优化器相关的权重预测策略(称为 PipeOptim),用于解决异步管道训练中的权重一致性和陈旧性问题,以确保高吞吐量和有效的参数学习,实验证明 PipeOptim 优于其他流行的管道方法。
Dec, 2023
本文介绍了一种支持高效内存管道并行处理的系统 ——PipeDream-2BW, 通过新型的流水线和权重梯度合并策略以及双缓冲器来实现大模型训练的加速。PipeDream-2BW 自动将模型划分到可用的硬件资源上,并考虑加速器的内存容量和互连拓扑等硬件限制,可以将大型 GPT 和 BERT 语言模型的训练速度提高最多 20 倍,并保持模型精度相似。
Jun, 2020
该论文探讨了管道并行(Pipeline parallelism)训练神经网络的各种技术,提出了一种简单而健壮的训练方法,名为 PipeMare,可以在保持与同步训练相当的模型质量的情况下提高硬件利用率,允许高效使用细粒度的并行计算。在 ResNet 和 Transformer 网络上进行测试,异步训练允许 PipeMare 使用更少的内存或更高的管道利用率。
Oct, 2019
通过将反向传播步骤分为两个独立阶段,本文引入 2 阶段反向传播(2BP),以减少空闲计算时间,并在各种模型架构和管道调度上测试 2BP,从而在所有情况下实现吞吐量的增加。使用 2BP,相较于传统方法,在训练一个类似 LLaMa 的 Transformer 时,能够实现吞吐量的 1.70 倍增长,模型参数为 70 亿个,跨 4 个 GPU。
May, 2024
通过对大型语言模型的多种训练配置进行全面的消融研究,我们总结出几个关键建议,以实现最高效的训练,例如,我们发现使用微批量大小为 1 通常能实现最高效的训练布局。较大的微批量大小需要激活检查点或更高程度的模型并行性,并且还会导致更大的管道延迟。我们最高效的配置使得在一系列模型规模上实现了最先进的训练效率结果,尤其是在训练 13B 模型时,模型 FLOPs 利用率达到了 70.5%。
Nov, 2023
通过将模型图分成 k 个阶段并减少瓶颈阶段的运行时间,我们通过最小化通信成本来优化深度神经网络(DNN)推理的流水线并行性。我们设计了针对这个 NP 困难问题的实际算法,并通过与通过新颖的混合整数规划(MIP)公式获得的强下界进行比较,证明它们在实践中几乎是最优的。我们将这些算法和下界方法应用于生产模型,从而在与标准组合下界相比,获得了显著改进的近似保证。这项工作表明,尽管最大吞吐量划分在理论上很困难,但我们在实践中对该问题的算法方面有所掌握,剩下的挑战主要在于开发更准确的成本模型以提供给划分算法。
Nov, 2023
在本研究中,我们提出了一种新的维度,即在单个训练序列中执行流水线并行处理,以用于 Transformer-based 语言模型的高效训练,并开发了一种基于动态规划的算法 TeraPipe,用于进行同步模型并行训练。我们证明,TeraPipe 可以在使用 48 个 p3.16xlarge 实例的 AWS 集群上将最大的包含 1750 亿参数的 GPT-3 模型的训练速度提高 5.0 倍,相比最先进的模型并行方法,具有更细粒度的流水线并行处理。
Feb, 2021