Pytorch分布式训练

现在深度学习模型占用显存大,数据量也大,单张显卡上训练已经满足不了要求了,只有多GPU并行训练才能加快训练速度;并行训练又分为模型并行和数据并行两种。模型并行比较少用到,这里主要介绍数据并行,pytorch中数据并行有两种DataParallel和DistributedDataParallel,前者是pytorch训练早期采用的,由于其单线程和显存利用率低等缺点,现在大多使用后者。


文章目录


1、并行训练

并行训练分两种,模型并行和数据并行。

1)模型并行。模型并行通常是指要训练的模型非常大,大到一块卡根本放不下,因而需要把模型进行拆分放到不同的卡上。例如早期的AlexNet就是拆分模型利用两块GPU训练的。

2)数据并行。数据并行通常用于训练数据非常庞大的时候,比如有几百万张图像用于训练模型。此时,如果只用一张卡来进行训练,那么训练时间就会非常的长。或者模型比较大,由于单卡显存的限制,训练时的batch size不能设置过大。这时就需要多个GPU训练来提升batchsize大小。

相关推荐
笑稀了的野生俊6 分钟前
ImportError: /lib/x86_64-linux-gnu/libc.so.6: version GLIBC_2.32‘ not found
linux·人工智能·ubuntu·大模型·glibc·flash-attn
吕永强7 分钟前
意识边界的算法战争—脑机接口技术重构人类认知的颠覆性挑战
人工智能·科普
二二孚日28 分钟前
自用华为ICT云赛道AI第三章知识点-昇腾芯片硬件架构,昇腾芯片软件架构
人工智能·华为
蹦蹦跳跳真可爱5891 小时前
Python----OpenCV(几何变换--图像平移、图像旋转、放射变换、图像缩放、透视变换)
开发语言·人工智能·python·opencv·计算机视觉
蹦蹦跳跳真可爱5891 小时前
Python----循环神经网络(Transformer ----Layer-Normalization(层归一化))
人工智能·python·rnn·transformer
夜阳朔1 小时前
Conda环境激活失效问题
人工智能·后端·python
小Lu的开源日常1 小时前
AI模型太多太乱?用 OpenRouter,一个接口全搞定!
人工智能·llm·api
mit6.8243 小时前
[Meetily后端框架] Whisper转录服务器 | 后端服务管理脚本
c++·人工智能·后端·python
Baihai IDP3 小时前
AI 系统架构的演进:LLM → RAG → AI Workflow → AI Agent
人工智能·ai·系统架构·llm·agent·rag·白海科技
沫儿笙3 小时前
弧焊机器人气体全方位节能指南
网络·人工智能·机器人