cuda简单使用(一)

cuda简单使用(一)

1.检查自己的DEVICE名

本人笔记本所带的GPU是GTX 1650

import torch
print(torch.cuda.get_device_name())
GeForce GTX 1650

2.检查自己可用的GPU数量-Returns the number of GPUs available.

import torch 
print(torch.cuda.device_count())
1

3.检查目前自己GPU的序号-Returns the index of a currently selected device

import torch
print(torch.cuda.current_device())
0

4.检查某个tensor所在的DEVICE

import torch
x = torch.tensor([[1,2,3],[4,5,6]])
print(x.device)
cpu

5.把tensor放进GPU中

5.1法一 在进行tensor变量命名的时候定义好DEVICE即可
import torch
x = torch.tensor([[1,2,3],[4,5,6]],device = torch.device('cuda'))
print(x.device)
cuda:0
5.2法二 提前在外部定义好cuda,然后每次定义tensor的时候直接引用变量
import torch
cuda0 = torch.device('cuda:0')
x = torch.tensor([[1,2,3],[4,5,6]],device = cuda0)
print(x.device)
cuda:0

6.把CPU中的tensor转移到GPU中

应用tensor.to(device) 其中device应该是torch.device的对象

import torch
device0 = torch.device('cuda:0')
x = torch.rand((2,3))
print(x.device)
y = x.to(device0)
print(y.device)
cpu
cuda:0

7.神经网络中CUDA的使用

在网络计算中,参与计算的主要是两个部分,一个是模型的参数,一个是实际输入的训练数据。将这两部分的数据都移动到GPU中进行计算才能将网络搬移到GPU中

7.1 module.to(device)的用法

这句话的本质是将某一个模型的参数以tensor的形式输入到device中,这样参数的计算就是在GPU里面了

import torch
device = torch.device('cuda:0')
M = torch.nn.Linear(10,10)
M = M.to(device)
Linear(in_features=10, out_features=10, bias=True)

7.2将训练数据输入到GPU中

for batch_idx, (inputs, targets) in enumerate(trainloader):inputs, targets = inputs.to(device), targets.to(device)

后续

争取每日一更···


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部