多显卡服务器下pytorch 指定某个 gpu训练与多 gpu并行训练的方法

一 . 指定一个 gpu训练的两种方法:

1.代码中指定

import torch
torch.cuda.set_device(id)

2.终端中指定

$ CUDA_VISIBLE_DEVICES=id python 程序名

其中id是gpu编号

二 . 多 gpu并行训练:

bashtorch.nn.DataParallel(module, device_ids=None, output_device=None, dim=0)

该函数实现了在module级别上的数据并行使用,注意batch size要大于GPU的数量。
参数 :

module:需要多GPU训练的网络模型
device_ids: GPU的编号(默认全部GPU,或[0,1] ,[0,1,2])
output_device:(默认是device_ids[0])
dim:tensors被分散的维度,默认是0

在保存模型时要注意要加上"module",例如:

network.module.state_dict()

Done!!!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CrystalheartLi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值