方法一、先声明再部署
import torch
'''
1)以下两种写法都可以,最常用的是第二个(gpu不可用就默认使用cpu),
作用都是声明device
2)其中“cuda”部分也可以写为"cuda:0/1/2...",0,1,2等表示显卡编号
'''
device = torch.device("cuda")
device = torch.device("cuda" if torch.cuda.is_availabel() else "cpu")
'''
下面就是将模型、数据(输入、标签)、损失部署在gpu上
'''
model = model.to(device)
input_data = input_data.to(device)
label = label.to(device)
loss = loss.to(device)
方法二、直接部署
'''
网络模型、数据(输入、标签)、损失都放到gpu上,
即所有的参数后面要跟上.cuda()
'''
model = model.cuda()
input_data = input_data.cuda()
label = label.cuda()
loss = loss.cuda()
if torch.cuda.is_availabel():
if torch.cuda.is_availabel():
model = model.cuda()
if torch.cuda.is_availabel():
input_data = input_data.cuda()
label = label.cuda()
if torch.cuda.is_availabel():
loss = loss.cuda()
|