Pytorch ddp切换forward函数 验证ddp是否生效

DDP及其在pytorch中应用

ddp默认调用forward函数,有些模型无法使用forward函数,可以对模型包装一下。

python 复制代码
class modelWraper(nn.Module):
    def __init__(self, model):
        super().__init__()
        self.model = model

    def forward(self, *args, **kwargs):
        return self.model.rlhf(*args, **kwargs)

有时ddp跑起来,不确定是否生效,loss backward后不同rank进程的梯度应该一样的,可以通过print 梯度确认。

python 复制代码
loss.backward()
grad_flag = raw_model.lm_head.weight.grad[0,:3]
print(f"grad {ddp_rank} {grad_flag}")


grad 1 tensor([2.9296e-04, 6.2223e-05, 1.0089e-03], device='cuda:1')
grad 0 tensor([2.9296e-04, 6.2223e-05, 1.0089e-03], device='cuda:0')

pytorch分布式系列2------DistributedDataParallel是如何做同步的?

相关推荐
ar01231 分钟前
AR眼镜在工业制造业的质量检测应用探讨
人工智能·ar
大邳草民13 分钟前
深入理解 Python 的属性化方法
开发语言·笔记·python
糯米导航24 分钟前
解锁 AI 开发技能:环境搭建、工具详解与第一个 AI 程序实战
人工智能
pen-ai35 分钟前
【高级机器学习】6. 稀疏编码与正则化
人工智能·机器学习
骑蜗牛散步35 分钟前
安装 NVIDIA Container Runtime(含离线安装)
人工智能
美团技术团队40 分钟前
美团开源LongCat-Audio-Codec,高效语音编解码器助力实时交互落地
人工智能
程思扬42 分钟前
开源 + 实时 + 无网络限制:Excalidraw 是流程图协作新选择
网络·人工智能·阿里云·ai·开源·流程图
聚合菌44 分钟前
【数据启元计划】推荐有礼:最高领100元话费或热门视频会员年卡!
人工智能
松岛雾奈.2301 小时前
机器学习--KNN算法中的距离、范数、正则化
人工智能·算法·机器学习
程途拾光1581 小时前
用流程图优化工作流:快速识别冗余环节,提升效率
大数据·论文阅读·人工智能·流程图·论文笔记