Pytorch 分布式训练(DP/DDP)

概念

PyTorch是非常流行的深度学习框架,它在主流框架中对于灵活性和易用性的平衡最好。

分布式训练根据并行策略的不同,可以分为模型并行和数据并行。

模型并行

模型并行主要应用于模型相比显存来说更大,一块 GPU 无法加载的场景,通过把模型切割为几个部分,分别加载到不同的 GPU 上,来进行训练

数据并行

这个是日常会应用的比较多的情况。即每个 GPU 复制一份模型,将一批样本分为多份分发到各个GPU模型并行计算。因为求导以及加和都是线性的,数据并行在数学上也有效。采用数据并行相当于加大了batch_size,得到更准确的梯度或者加速训练

常用的 API 有两个:

torch.nn.DataParallel(DP)

torch.nn.DistributedDataParallel(DDP)

DP 相比 DDP 使用起来更友好(代码少),但是 DDP 支持多机多卡,训练速度更快,而且负载相对要均衡一些。所以优先选用 DDP 吧。

参考

Pytorch 分布式训练(DP/DDP)_pytorch分布式训练_ytusdc的博客-CSDN博客

PyTorch分布式训练简明教程(2022更新版) - 知乎

Pytorch分布式训练 - 知乎

Pytorch多机多卡分布式训练 - 知乎

Pytorch - 多机多卡极简实现(附源码) - 知乎

相关推荐
孤华暗香3 分钟前
Python快速入门 —— 第三节:类与对象
开发语言·python
didiplus4 分钟前
【趣学Python算法100例】百钱百鸡
python·算法·百钱百鸡
Alluxio16 分钟前
选择Alluxio来解决AI模型训练场景数据访问的五大理由
大数据·人工智能·分布式·ai·语言模型
pzx_00116 分钟前
【内积】内积计算公式及物理意义
数据结构·python·opencv·算法·线性回归
一丝晨光17 分钟前
逻辑运算符
java·c++·python·kotlin·c#·c·逻辑运算符
ForRunner12320 分钟前
使用 Python 高分解决 reCAPTCHA v3 的指南
数据库·python·microsoft
AIPaPerPass写论文23 分钟前
写论文去哪个网站?2024最佳五款AI毕业论文学术网站
人工智能·深度学习·chatgpt·powerpoint·ai写作
唯创知音24 分钟前
电子烟智能化创新体验:WTK6900P语音交互芯片方案,融合频谱计算、精准语音识别与流畅音频播报
人工智能·单片机·物联网·音视频·智能家居·语音识别
5pace1 小时前
PyTorch深度学习快速入门教程【土堆】基础知识篇
人工智能·pytorch·深度学习
aWty_1 小时前
机器学习--卷积神经网络(包括python实现)
人工智能·机器学习·cnn