栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【环境配置】RTX 3090+cuda11.2+python39+pytorch1.8.0

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【环境配置】RTX 3090+cuda11.2+python39+pytorch1.8.0

RTX3090+cuda11.2+python39+pytorch1.8.0
  • Python
  • CUDA
  • CUDNN
  • PyTorch
  • 验证


Python

网上教程很多,不再赘述。版本根据自己需求来定,我选的是比我之前使用的python版本高但比最新python版本稍低的python3.9.9,图个稳定。在这个过程中唯一需要提醒的是把python路径自动添加到环境变量中勾选上,省去麻烦。后期验证也很简单,打开cmd直接试试python,print一下就行。【python下载】

CUDA
  • 查看本机显卡所支持的最高cuda版本,桌面右键->nvidia控制面板->左下角,点击【系统信息】->选择【组件】->第三行NVIDIA CUDA 11.2.xx;
  • 下载CUDA, 我选择v11.2.2;
  • 安装时,取消勾选CUDA子选项中的visual studio integration,这是我的惯例,以免出现安装失败;
  • 安装完成后,查看环境变量中的 系统变量 是否包含cuda_path、cuda_path_11_2;
  • 如下操作:win+R,cmd,nvcc -V,出现cuda信息即表明成功安装。
CUDNN

下载这家伙需要注册登录,自行解决(听说可以用迅雷下载,扔进去链接就行),我自己用的学校邮箱注册的,长期用它下载python、matlab、pycharm等,不用白不用 

  • 下载cudnn, 对应cuda版本,选择v8.1.1;
  • 复制cudnn下面三个文件bin, include, lib至cuda安装目录下,覆盖
  • 添加环系统变量,在PATH中添加,详情参考:https://blog.csdn.net/jhsignal/article/details/111401628;
  • 安装验证,网址:https://blog.csdn.net/jhsignal/article/details/111398427。可以概括为:打开目录C:Program FilesNVIDIA GPU Computing ToolkitCUDAv11.2extrasdemo_suite,在路径框内输入cmd后回车,在命令行里运行其中两个exe文件进行验证。
PyTorch

安装pytorch-gpu,兴高采烈地去下载发现没有适合的cuda==11.2的torch版本,于是选择了11.1版本,命令如下:

pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html

 遇到问题:命令行里下载pytorch-gpu,始终在最后一刻失败,于是自己手动下载torch,地址就按照命令行给出的地址在浏览器下载,下载完成后在cmd执行: pip3 install "你存放.whl的地址",等待片刻即可。

然后继续执行之前的命令(还没完呢):

pip install torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html

聪明的你一定发现了,这个命令中少了torch那部分,因为同样聪明的我  在前面已经果断手动安装成功了,此处只需要安装torchvision和torchaudio即可,速度很快,无报错信息出现。

验证
  • torch-gpu验证
  • cudnn验证

验证后者的理由是:cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算

import torch
import torch.nn as nn

print(torch.cuda.is_available())

aa = torch.zeros([20, 3, 32, 32]).float().cuda()
conv_layer = nn.Conv2d(3, 64, 3, 1, 1).cuda()
out = conv_layer(aa)
print(out.device, out.shape)

Output:

True
cuda:0 torch.Size([20, 64, 32, 32])

收工。愈发熟练了啊,全部完成都不到一个白天 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/588626.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号