alibaba/Megatron-LLaMA

pipeline parallel fwd/bwd里面为什么没有调用optimizer.backward_epilogue()

Closed this issue · 4 comments

在forward_backward_no_pipelining中实调用了optimizer.backward_epilogue() 进行grad的累加拷贝和bucket重置,为什么在forward_backward_pipelining_without_interleaving和forward_backward_pipelining_with_interleaving里面没有调用?

实际是需要的,目前pipeline 还在适配。

实际是需要的,目前pipeline 还在适配。

多谢。
今天测试了一下DP2的训练,在timeline中发现reducescatter和backward计算没有并行,可能是什么原因?
image

设置CUDA_DEVICE_MAX_CONNECTIONS=1 会导致无法并行。

设置CUDA_DEVICE_MAX_CONNECTIONS=1 会导致无法并行。

那是不是开启overlappedDistOpt的话,就不能使用seq parallel了?
Using sequence parallelism requires setting the environment variable "
"CUDA_DEVICE_MAX_CONNECTIONS to 1