Pytorch分布式训练

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


文章目录


1、并行训练

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

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

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

相关推荐
冬奇Lab9 小时前
每日一个开源项目(第140篇):AgentScope 2.0 - 阿里开源的生产级 Agent 框架
人工智能·开源·agent
冬奇Lab9 小时前
Skill 系列(04):Skill 指标体系——L1/L2/L3 三层监控,让质量下降有据可查
人工智能·开源·llm
IT_陈寒10 小时前
Vite的静态资源打包让我熬夜到三点,这坑千万别跳
前端·人工智能·后端
玩转AI不是事11 小时前
用IndexedDB做AI对话离线缓存实战
人工智能
Asize12 小时前
多模态生图:从 Vite 工程化到前端调用 Qwen Image
javascript·人工智能·后端
MobotStone12 小时前
AI项目越多,为什么越容易失控
人工智能·aigc
十有八七12 小时前
AI时代的置身X内
前端·人工智能
Lkstar12 小时前
A2A协议深度解析|Agent2Agent通信标准,智能体互联网的"HTTP"
人工智能·llm
百度Geek说12 小时前
当代码越来越便宜,什么在变贵?
人工智能
橘子星12 小时前
LLM 无状态架构实践:从原理到代码落地
前端·javascript·人工智能