如东县文化馆网站建设,哪个网站做分享赚佣金,外贸商城网站建设公司,wordpress连接公众号帮up宣传一下#xff0c;优质up值得信赖#xff01; B站UP#xff1a;你可是处女座啊 文章目录 原理一、 DDP二、基本概念三、分布式训练中的通信 实战初始化进程组当前 进程 到底使用哪些数据#xff1f;模型处理启动改造 loss 打印改造准确率改造数据划分训练前数据打乱… 帮up宣传一下优质up值得信赖 B站UP你可是处女座啊 文章目录 原理一、 DDP二、基本概念三、分布式训练中的通信 实战初始化进程组当前 进程 到底使用哪些数据模型处理启动改造 loss 打印改造准确率改造数据划分训练前数据打乱batch_size 是多少 TrainerDDP vs DP 效率对比总结 简称 DDP
原理 一、 DDP 补充一下 DP 原理 二、基本概念 解释概念Global 是全局信息Local 是局部信息 三、分布式训练中的通信 t 代表数据 注意不局限于求和计算可以其余计算例如平均 实战 初始化进程组 当前 进程 到底使用哪些数据
Pytorch 自己实现了借助采样器就可以实现不同的 GPU 选择不同数据 模型处理 启动
torchrun --nproc_per_node2 ddp.py
nproc_per_node 每个节点的进程数改造 loss 打印
自己写通信 loss 打印结果一致
继续优化只在一个进程中打印用 gloabl_rank 指定进程号效果只打印一次 改造准确率
dist.all_reduce() 默认就是 sum 改造数据划分
每个进程都会进行一次随机数据划分训练集和测试集必定存在重叠需要保证划分一致 看数据打印是否一致即可 训练前数据打乱 batch_size 是多少
设置的 batch_size * 2
注意如果验证集数量不够多个进程均分会导致准确率不准accelerate 解决 Trainer
不需要任何修改就可以跑 DDP 准确率的坑数据划分的随机性导致 DDP vs DP 效率对比 总结