前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pytorch+cuda初体验

pytorch+cuda初体验

作者头像
luxuantao
发布2021-02-24 11:27:50
7390
发布2021-02-24 11:27:50
举报
文章被收录于专栏:Fdu弟中弟Fdu弟中弟

之前只在NVIDIA JETSON TX2上用过CUDA,由于本学期选了并行计算这门课,应该会用到一点CUDA;于此同时,最近又在研究pytorch,还没有试过在GPU上跑pytorch;并且我一查,自己的显卡是英伟达的且支持CUDA。所以就毅然决定去试一试。

查看自己的显卡是否支持CUDA

首先你要看自己的显卡是不是英伟达的,如果是AMD的就已经没戏了,后面的文章你就别看了。

确定是英伟达的显卡后,上这个网查一查自己的显卡是否支持CUDA:https://developer.nvidia.com/cuda-gpus

网站里也清楚地标注了不同型号的算力,我的显卡是Quadro K620,这是一款专业级显卡,画图建模很不错,但是用来打游戏就不咋地了(打游戏请用Geforce系列),算力5.0,算是刚刚及格吧。Jetson TX1的算力为5.3,TX2为6.2,最新的AGX Xavier算力为7.2,毕竟一分价钱一分货。

安装CUDA

上这个网址下载CUDA:https://developer.nvidia.com/cuda-downloads

选择自己操作系统的版本,Installer Type我选的是local,然后就是无脑装,所有的配件我都勾选了(默认),当然你也可以按需选取。安装过程中屏幕会有闪动,这是正常现象。

装好后,去CMD输入nvcc -V看一下版本号,我下的最新版为Cuda compilation tools, release 10.1, V10.1.243,如果显示找不到命令,去配一下环境变量 。

安装pytorch

上这个网址下载pytorch:https://pytorch.org,选择相应的版本,得到下载命令。

我的下载命令为:conda install pytorch torchvision cudatoolkit=10.0 -c pytorch

下载过程中可能会碰到各种anaconda给你报的奇奇怪怪的问题,更新这个,下载那个,照做就是了。

对比CPU和GPU的性能差距

装好后检验一下效果,用pytorch分别在CPU和GPU上做一个矩阵乘法,算一下用时:

import torch
import time

print(torch.__version__)
print(torch.cuda.is_available())  # 得返回true,否则你再看看上文哪儿出了问题

a = torch.randn(10000, 1000)
b = torch.randn(1000, 2000)

t0 = time.time()
c = torch.matmul(a, b)
t1 = time.time()
print(a.device, t1 - t0, c.norm(2))

device = torch.device('cuda')
a = a.to(device)
b = b.to(device)

t0 = time.time()
c = torch.matmul(a, b)
t2 = time.time()
print(a.device, t2 - t0, c.norm(2))

t0 = time.time()
c = torch.matmul(a, b)
t2 = time.time()
print(a.device, t2 - t0, c.norm(2))

我的运行结果:

1.2.0
True
cpu 0.2418828010559082 tensor(141039.7031)
cuda:0 0.30884218215942383 tensor(141441.1094, device='cuda:0')
cuda:0 0.0069959163665771484 tensor(141441.1094, device='cuda:0')

你会发现我在GPU上特地跑了两次,而且第一次时间甚至比CPU还久,那是因为第一次GPU需要做一些部署的工作,时间自然会长一些,第二次运行时间就明显比 CPU短很多了。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 查看自己的显卡是否支持CUDA
  • 安装CUDA
  • 安装pytorch
  • 对比CPU和GPU的性能差距
相关产品与服务
GPU 云服务器
GPU 云服务器(Cloud GPU Service,GPU)是提供 GPU 算力的弹性计算服务,具有超强的并行计算能力,作为 IaaS 层的尖兵利器,服务于深度学习训练、科学计算、图形图像处理、视频编解码等场景。腾讯云随时提供触手可得的算力,有效缓解您的计算压力,提升业务效率与竞争力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档