Pytorch-GPU加速

1、什么是GPU加速计算

GPU,又称显卡、视觉处理器,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器,与CPU类似,只不过GPU是专为执行复杂的数学和几何计算而设计的,这些计算是图形渲染所必需的。
随着人工智能的发展,如今的GPU已经不再局限于3D图形处理了。GPU 加速计算是指同时利用图形处理器 (GPU) 和 CPU,加快科学、分析、工程、消费和企业应用程序的运行速度。

2、在Pytorch使用GPU加速

在PyTorch中使用GPU和TensorFlow中不同,在TensorFlow如果不对设备进行指定时,TensorFlow检测到GPU就会把自动将数据与运算转移到GPU中。而PyTorch类似于MxNet,需要显性的指定数据和运算放在哪里执行,这样的操作比较自由,却也有些繁琐。因为如果哪一步忘记转换了就会运行出错。

在代码的表现形式:***.cuda()
(1)在数据集加载中,使用GPU加速,如下:

test_x = torch.unsqueeze(test_data.test_data, dim=1).type(torch.FloatTensor)[:2000].cuda()/255.  
test_y = test_data.test_labels[:2000].cuda()

(2)对Tensor变量使用GPU加速,如下:

b_x = x.cuda()   
b_y = y.cuda()   

注:torch不同设备上的数据不能进行计算。指的是tensor。不包括numpy,list等。List和numpy可直接与tensor(无论在cpu还是gpu)进行计算。
(3)对搭建好的网络模型和损失函数使用GPU加速,如下:

cnn.cuda()      
loss_f = loss_f.cuda()

注:在模型定义完后,直接使用model.cuda()将模型的所有参数转移到cuda()上。
注:GPU是用来执行张量运算的,因此需要放在GPU上的是输入数据以及模型参数,optimizer不需要放GPU上

参考链接
1.莫烦python
2.[开发技巧]·PyTorch如何使用GPU加速

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值