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

  • Post author:
  • Post category:python


RTX3090+cuda11.2+python39+pytorch1.8.0




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 Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite,在路径框内输入cmd后回车,在命令行里运行其中两个exe文件进行验证(先后运行deviceQuery.exe以及bandwidthTest.exe,各自出现结果为

    Result = PASS

    即可)。



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])

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



版权声明:本文为weixin_43543177原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。