从BERT到ChatGPT:大模型训练中的存储系统挑战与技术发展——论文泛读

计算机研究与发展 2024 Paper 论文阅读笔记整理

问题

以ChatGPT为代表的大模型在文字生成、语义理解等任务上表现卓越,但大模型的参数量在3年内增长数万倍,且仍呈现增长的趋势。大模型训练面临存储挑战,存储需求大,且具有独特的计算模式、访存模式、数据特征,这使得针对互联网、大数据等应用的传统存储技术在处理大模型训练任务时效率低下,且容错开销大。

面向大模型训练的存储加速技术

基于大模型计算模式的分布式显存管理技术

依据大模型计算任务的划分模式和计算任务间的依赖关系,设计模型数据在分布式集群中的划分、存储和传输策略。

细分为2种模式:模型层间并行,以张量为粒度对模型数据进行拆分;模型层内并行,以张量种某一维度为粒度对模型数据进行拆分。

模型层间并行,数据并行:

模型层间并行,流水线并行:

模型层内并行,张量并行:

大模型训练访存感知的异构存储技术

借助大模型训练中的访存模式可预测的特性,设计异构设备中的数据预取和传输策略。同时利用GPU显存、DRAM、SSD,将模型参数、优化器数据、训练中间结果卸载,根据预测的仿存模式进行预取。

基于DRAM的异构存储技术:

  • 异步显存管理:异步分配显存空间

  • 异步数据传输:将计算和传输重叠,预取

  • 显存卸载策略:静态策略(仅卸载卷积层)、动态策略(根据显存开销动态卸载)

基于SSD的异构存储技术:

结合使用数据压缩和卸载,降低数据传输开销

大模型数据缩减技术

针对大模型数据的特征,通过增加计算量或牺牲模型精度,对模型训练过程中的数据进行缩减。

激活量检查点与重算:在前向传播时,仅保存少量的激活量作为检查点,并丢弃其他的激活量。在反向传播需要使用丢弃的激活量时,系统利用激活量检查点重新进行前向传播,以恢复之前所丢弃的激活量。

混合精度训练与量化:使用半精度(FP16)降低显存开销,通过权重备份(额外保留全精度模型参数,训练使用半精度参数)、损失量(loss)扩展、算数精度提高,避免数据溢出、误差、不收敛、梯度过小的问题。

各种方法比较

针对大模型训练的存储容错技术

参数检查点技术

将大模型参数存储至持久化存储介质,GPU故障后利用最新且完整的参数进行恢复。

面临挑战:参数持久化开销大,会阻塞计算任务;参数检查点频率会影响训练和恢复效率。

将检查点过程拆分,与模型训练重叠:

冗余计算技术

在多张GPU中重复计算相同版本的参数。

总结

大模型训练过程中对存储需求大,具有独特的计算模式、访存模式、数据特征,需要根据特征设计合适的存储策略。大模型训练存储加速技术:(1)显存管理:数据并行、流水线并行、张量并行。(2)异构存储技术:利用DRAM、SSD,卸载模型参数、优化器数据、中间结果,并进行预取。(3)数据缩减:增加计算量(激活量重算)或牺牲模型精度(半精度训练)。大模型训练容错技术:(1)参数检查点:将检查点过程拆分,与模型训练重叠。(2)冗余计算:在多张GPU重复计算。

相关推荐
0x2115 小时前
[论文阅读]Through the Stealth Lens: Rethinking Attacks and Defenses in RAG
论文阅读
川西胖墩墩1 天前
团队协作泳道图制作工具 PC中文免费
大数据·论文阅读·人工智能·架构·流程图
starsky_walker1 天前
【论文阅读笔记】--SOSP2025--Proto: A Guided Journey through Modern OS Construction
论文阅读·笔记
AI-Frontiers1 天前
小白也能看懂的LLM-RL算法:PPO/DPO/GRPO/GSPO
强化学习·大模型训练
MoonOutCloudBack1 天前
Nash-MTL:在多任务梯度组合中引入纳什谈判解
论文阅读·人工智能·深度学习·机器学习·多任务·帕累托最优
大猪宝宝学AI2 天前
【AI Infra】SonicMoE论文笔记
论文阅读·人工智能·性能优化
我要学脑机2 天前
[脑磁图+PD综述]文献阅读记录
论文阅读
EEPI2 天前
【论文阅读】RoboReward: General-Purpose Vision-Language Reward Models for Robotics
论文阅读
小明_GLC2 天前
MDMLP-EIA时序论文阅读
论文阅读
m0_650108242 天前
P2PNet:基于点的密集人群计数与定位
论文阅读·深度学习·人群计数与定位·基于头部中心点·p2pnet