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是如何做同步的?

相关推荐
智启七月11 分钟前
从 token 到向量:微信 CALM 模型颠覆大语言模型范式
人工智能·深度学习
老纪的技术唠嗑局14 分钟前
AI 时代的数据库进化论 —— 从向量到混合检索
人工智能
Better Bench19 分钟前
【大模型RAG安全基准】安装和使用SafaRAG框架
网络·人工智能·安全·大模型·组件·rag
大千AI助手20 分钟前
差分隐私:机器学习和数据发布中的隐私守护神
人工智能·神经网络·机器学习·dp·隐私保护·差分隐私·大千ai助手
R-G-B22 分钟前
【P27 回归算法及应用实践】有监督的机器学习、分类与回归、一元线性回归、最小二乘法、多元回归与梯度下降、学习率
人工智能·回归·最小二乘法·梯度下降·一元线性回归·有监督的机器学习·分类与回归
程序员小赵同学22 分钟前
Spring AI Alibaba语音合成实战:从零开始实现文本转语音功能
人工智能·spring·语音识别
Dev7z32 分钟前
结合HOG特征与支持向量机(SVM)的车牌字符识别系统
人工智能·分类·数据挖掘
咋吃都不胖lyh38 分钟前
比较两个excel文件的指定列是否一致
爬虫·python·pandas
MaybeAI1 小时前
Skill 与 Workflow:让自动化更“聪明”的系统架构
人工智能·ai·自动化·workflow·工作流
唯道行1 小时前
计算机图形学·9 几何学
人工智能·线性代数·计算机视觉·矩阵·几何学·计算机图形学