流水线并行会引起内存消耗头重脚轻的问题,导致卡间内存分布不均,训练模型尺寸受限于PP-Stage 0的显存,为了增大模型规模则需要采取重计算,导致单步训练时间大幅增长。
本算法通过合理利用剩余卡上的显存,构建最优内存排布,解决PP引入的内存不均衡问题,达到内存效率提升的效果,从而规避重计算,以此大幅减少单步运行时间,提升模型训练性能。
当前在Atlas A2 训练系列产品上验证,GPT3模型在32卡条件下,算法可以充分利用片上内存显存,在不开重计算的情况下,硬件可训练参数规模提升了16%;相对开重计算,模型性能提升33%(内存增加不超过30%)。