大模型(LLMs)分布式训练面.pdf

计算机与AI
文档页数:6
文档大小:414.74KB
文档格式:pdf
文档分类:计算机与AI
上传会员:
上传日期:
最后更新:

大模型(LLMs)分布式训练面

1.理论篇

1.1想要训练1个LLM,如果只想用1张显卡,那么对显卡的要求是什么?

显卡显存足够大,nB模型微调一般最好准备20nGB以上的显存.

1.2如果有N张显存足够大的显卡,怎么加速训练?

数据井行(DP),充分利用多张显卡的算力.

1.3如果显卡的显存不够装下一个完整的模型呢?

最直观想法,需要分层加载,把不同的层加载到不同的GPU上(accelerate的device_map)

也就是常见的PP,流水线并行.

有其他方式? 1.4PP推理时,是一个串行的过程,1个GPU计算,其他空闲,有没

1.横向切分:流水线并行(PP),也就是分层加载到不同的显卡上.2.纵向切分:张量并行(TP),在DeepSpeed世界里叫模型并行(MP)

1.53种并行方式可以叠加吗?

毕竟显卡进化的比较慢,最大显存的也就是A10080g. 是可以的,DPTPPP,这就是3D并行.如果真有1个超大模型需要预训练,3D并行那是必不可少的.

单卡80g,可以完整加载小于40B的模型,但是训练时梯度优化器状态,5B模型就是上限了,更别说 activation的参数也要占显存,batch size还得大.而现在100亿以下(10B以下)的LLM只能叫smallLLM.

1.6ColosSal-AI有1D/2D/2.5D/3D,是什么情况?

Colossal-AI的nD是针对张量并行,指的是TP的切分,对于矩阵各种切,和3D并行不是一回事.

1.7除了3D并行有没有其他方式大规模训练?

可以使用更优化的数据并行算法FSDP(类似ZeRO3)或者直接使用DeepSpeedZeRO.

1.8有了ZeRO系列,为什么还需要3D并行?

根据ZeRO论文,尽管张量并行的显存更省一点,张量并行的通信量实在太高,只能限于节点内(有 NVLINK).如果节点间张量并行,显卡的利用率会低到5%

但是,根据Megatron-LM2的论文,当显卡数量增加到干量级,ZeRO3是明显不如3D并行的.

and the 530Bmdel is showwithsolidlines)Glealbath sizes Figure 10: Throughput per GPU of PTD-P and ZeRO-3 for two differ- ent GPT models (the 17SB GPT-3 model is shown with dotted lines are fixed and ZeRO-3 is used without any model paraflelism.

1.9平民适不适合玩3D并行?

不适合.

3D井行的基础是,节点内显卡间NVLINK超高速连接才能上TP.有没有NVLINK都是个问题.

而且,节点间特殊的网络通常有400Gb/s?远超普通IDC内的万兆网络10Gb/s.

1.10平民适不适合直接上多机多卡的ZeR03(万兆网)?

不适合.

想象一下,当65B模型用Zero3,每一个step的每一张卡上需要的通信量是195GB(3倍参数量),也就是1560Gb.万兆网下每步也要156s的通信时间,这画面太美.

2.实践篇

2.1假如有超多的8卡A100节点(DGXA100),如何应用3D并行策 略?

1.首先,张量并行.3种并行方式里,张量并行(TP)对于GPU之间的通信要求最高,而节点内有 NVLINK通信速度可以达到600GB/s.2.其次,流水线并行,每个节点负责一部分层,每35个节点组成一路完整的流水线,也就是一个完整的模型副本,这里一个模型副本需280卡.

3.最后,数据并行,官方也做了8路,10路,12路的并行实验,分别使用280个节点,350个节点和420个节点.

2.2如果想构这样一个大规模并行训练系统,训练框架如何选?

可以参考Megatron-Turing NLG 530B NVIDIA Megatron-LM Microsoft DeepSpeed

BLOOM则是PPDP用DeepSpeed,TP用Megatron-LM

当然还有一些其他的训练框架,在超大规模下或许也能work

2.3训练框架如何选?

下面这个图是bloom的一个实验,DP/TP/PP都能降显存,核心是要降到单卡峰值80g以下.

真大模型就是要TP=8,充分利用NVLINK,然后优先PP,最后DP.

GPUs Size DP TP PP MBS Mem TFLOPS Notes8 20B 1 8 1 1 68GB 107.48 02-1780 200B 1 8 10 1 75GB 97.82 02-17160 200B 2 8 10 1 53GB 96.19 知乎 @sueld 02-17

然而假大模型(7B)比如LLaMA-7B,可以不用3D并行,直接用DeepSpeedZeRO更方便,参考open-llama项目.

3.并行化策略选择篇

3.1单GPU

1.显存够用:直接用2.显存不够:上offload,用cpu

3.2单节点多卡

1.显存够用(模型能装进单卡):DDP或ZeRO2.显存不够:TP或者ZeRO或者PP

重点:没有NVLINK或者NVSwitch,也就是穷人模式,要用PP

3.3多节点多卡

如果节点间通信速度快(穷人的万兆网肯定不算)

ZeRO或者3D并行,其中3D井行通信量少但是对模型改动大.

如果节点间通信慢,但显存又少.DPPPTPZeRO-1

4.问题篇

4.1推理速度验证

ChatGML在V100单卡的推理耗时大约高出A800单卡推理的40%.

ChatGML推理耗时和问题输出答案的字数关系比较大,答案字数500字以内,A800上大概是每100字, 耗时1秒,V100上大概是每100字,耗时1.4秒.

1.ChatGML在A800单卡推理耗时统计

运行次 平均答家问题 数 长度 平均耗时给我介绍一下苹果公 1.94589900970司.50个字 5 146.6 45898给我介绍一下微软公 1.29782838821司,50个字 5 104.6 41113给我介绍一下苹果公 2.09909729957司,100个字 5 165.4 58055给我介绍一下微软公司,100个字 5 154.4 1.90921025276 18409给我介绍一下苹果公司,200个字 5 168.4 2. 41356给我介绍一下微软公 司,200个字 5 208.8 2.60898609161 37697司,300个字 给我介绍一下苹果公 5 443.4 5.40341305732 72705给我介绍一下微软公 司,300个字 484.2 5.980589342给我介绍一下苹果公 司,500个字 525.4 2984 6.24632849693给我介绍一下微软公 司,500个字 5 591.6 6.96139039993 2862

1.ChatGML在V100单卡推理耗时统计

问题 运行次 平均答室 长度 平均耗时数给我介绍一下苹果公 司.50个字 5 146.6 1.9458990097045898给我介绍一下微软公 5 104.6 1.29782838821司,50个字 41113给我介绍一下苹果公 5 165.4 2.09909729957司100个字 58055给我介绍一下微软公 5. 154.4 1.90921025276司,100个字 18409给我介绍一下苹果公 5 168.4 2.13020663261司.200个字 41356给我介绍一下微软公 5 208.8 2.60898609161司,200个字 37697给我介绍一下苹果公 5 443.4 5.40341305732司,300个字 72705给我介绍一下微软公 5 484.2 5.980589342司,300个字给我介绍一下苹果公 5 525.4 6.24632849693司.500个字 2984给我介绍一下微软公 591.6 6.96139039993司,500个字 2862

1.结论:

2.训练效率方面:多机多卡训练,增加训练机器可以线性缩短训练时间.

3.推理性能方面:

4.2并行化训练加速

可采用deepspeed进行训练加速,目前行业开源的大模型很多都是采用的基于deepspeed框架加速来进行模型训练的.如何进行deepspeed训练,可以参考基于deepspeed构建大模型分布式训练平台.

deepspeed在深度学习模型软件体系架构中所处的位置:

DL model>train opitimization(deepspeed)>train framework -> train instruction (cloud)>GPU device

当然需要对比验证deepspeed的不同参数,选择合适的参数.分别对比stage2.3进行验证,在GPU显存够的情况下,最终使用stage2.

资源链接请先登录(扫码可直接登录、免注册)
①本文档内容版权归属内容提供方。如果您对本资料有版权申诉,请及时联系我方进行处理(联系方式详见页脚)。
②由于网络或浏览器兼容性等问题导致下载失败,请加客服微信处理(详见下载弹窗提示),感谢理解。
③本资料由其他用户上传,本站不保证质量、数量等令人满意,若存在资料虚假不完整,请及时联系客服投诉处理。
④本站仅收取资料上传人设置的下载费中的一部分分成,用以平摊存储及运营成本。本站仅为用户提供资料分享平台,且会员之间资料免费共享(平台无费用分成),不提供其他经营性业务。
投稿会员:标准资料
我的头像

您必须才能评论!

手机扫码、免注册、直接登录

 注意:QQ登录支持手机端浏览器一键登录及扫码登录
微信仅支持手机扫码一键登录

账号密码登录(仅适用于原老用户)