Pytorch——多卡GPU训练与单卡GPU训练相互切换

部分深度学习网络默认是多卡并行训练的,由于某些原因,有时需要指定在某单卡上训练,最近遇到一个,这里总结如下。

目录

  • 一、多卡训练
    • [1.1 修改配置文件](#1.1 修改配置文件)
    • [1.2 修改主训练文件](#1.2 修改主训练文件)
    • [1.3 显卡使用情况](#1.3 显卡使用情况)
  • 二、单卡训练
    • [2.1 修改配置文件](#2.1 修改配置文件)
    • [2.2 显卡使用情况](#2.2 显卡使用情况)
  • 三、总结

一、多卡训练

1.1 修改配置文件

1.2 修改主训练文件

上面红框中代码解析:

python 复制代码
if torch.cuda.is_available() and ngpu > 1:         # 当 torch.cuda.is_available() 为真且 ngpu > 1 时              
	model = nn.DataParallel(model, device_ids=list(range(ngpu)))

model = nn.DataParallel(model, device_ids=list(range(ngpu))):

此行代码创建了一个 DataParallel包装器,用于在多个GPU上并行处理神经网络模型。DataParallel 是 PyTorch 中的一个模块,它可以将输入数据分割并发送到不同的GPU进行处理,然后汇总结果。

model:要并行化的神经网络模型。

device_ids=list(range(ngpu)):指定要使用的GPU。在这里,它使用了所有可用的GPU,数量上限为指定的 ngpu。

1.3 显卡使用情况

二、单卡训练

2.1 修改配置文件

2.2 显卡使用情况

修改好后开始训练,查看显卡使用情况:

三、总结

以上就是多卡GPU训练与单卡GPU训练相互切换的操作过程,希望能帮到你,谢谢!

相关推荐
树獭非懒12 小时前
AI大模型小白手册|Embedding 与向量数据库
后端·python·llm
KaneLogger12 小时前
【Agent】openclaw + opencode 打造助手 安装篇
人工智能·google·程序员
知识浅谈13 小时前
一步步带你把 OpenClaw 玩宕机(附云服务器避坑部署教程)
人工智能
冬奇Lab13 小时前
OpenClaw 深度解析(四):插件 SDK 与扩展开发机制
人工智能·开源·源码阅读
IT_陈寒14 小时前
SpringBoot实战:5个让你的API性能翻倍的隐藏技巧
前端·人工智能·后端
机器之心15 小时前
让AI自我进化?斯坦福华人博士答辩视频火了,庞若鸣参与评审
人工智能·openai
iceiceiceice15 小时前
iOS PDF阅读器段评实现:如何从 PDFSelection 精准还原一个自然段
前端·人工智能·ios
唐叔在学习15 小时前
就算没有服务器,我照样能够同步数据
后端·python·程序员
AI攻城狮16 小时前
RAG Chunking 为什么这么难?5 大挑战 + 最佳实践指南
人工智能·云原生·aigc