Virtual pipeline模式异步DDP优化技术

常规的virtual pipeline流水线并行策略下,先执行forward,接着执行backward,最后执行数据并行维度的梯度allreduce,坏处是backward与allreduce没有并行起来,导致allreduce的耗时不能被掩盖,进而使step端到端耗时较长。如图1红框所示,cool down阶段的5、6、7、8microbatch与梯度的allreduce不构成依赖,仿照pytorch ddp的思想,可以使backward与allreduce并行起来,以此实现部分bucket的通信提前,减少DDP通信拖尾。

图1 Virtual pipeline模式梯度allreduce与反向并行