win10安装GPU版的pytorch

2021年 12月 4日 126点热度 0人点赞 0条评论

引言

由于pytorch官网点击打开链接提供了windows的安装方式,故直接采用这种方法,当然也可以通过anaconda来安装。 由于是安装gpu的版本,故需要先安装cuda以及与其版本相对应的cudnn。

查看本机显卡

本人电脑是华硕,i5,64位,NVIDIA GeForce 940MX,已安装VS2015。查看gpu属性的方式:“此电脑”右键“属性”→“设备管理器”→“显示适配器”,会跳出具体的版本。 满足cuda所提供的安装配置需求:https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#axzz4TpI4c8vf

安装显卡驱动

安装显卡驱动,本机默认已安装。

安装cuda

进入:https://developer.nvidia.com/cuda-downloads,选择对应的系统配置下载cuda.xxxxxx.exe文件 类似一般性的windows应用的安装方式安装即可(目前最新的是cuda 9.2,本人安装的是9.1)。 验证是否已安装:打开cmd,输入:nvcc -V

C:\Users\rainbow>nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Thu_Nov_18_09:52:33_Pacific_Standard_Time_2021
Cuda compilation tools, release 11.5, V11.5.119
Build cuda_11.5.r11.5/compiler.30672275_0

C:\Users\rainbow>

安装cudnn

世界各地的深度学习研究人员和框架开发者都依赖 cuDNN 实现高性能 GPU 加速。借助 cuDNN,研究人员和开发者可以专注于训练神经网络及开发软件应用,而不必花时间进行低层级的 GPU 性能调整。

cuDNN 可加速广泛应用的深度学习框架,包括 Caffe2、Chainer、Keras、MATLAB、MxNet、PyTorch 和 TensorFlow。

官网:https://developer.nvidia.com/cudnn

相比标准的cuda,它在一些常用的神经网络操作上进行了性能的优化,比如卷积,pooling,归一化,以及激活层等等。 所以配置cuDNN时是要对cuda进行一些修改,所以我们要先安装cuda。cuDNN下载需要注册。 下载之后,

  1. 解压:会生成cuda/include、cuda/lib、cuda/bin三个目录;
  2. 分别将cuda/include、cuda/lib、cuda/bin三个目录中的内容拷贝到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5对应的include、lib、bin目录下即可;
  3. 将bin所在的目录添加到环境变量 PATH 中,“此电脑”→“高级系统设置”→“环境变量”→“系统变量”→“path”→“编辑”→“新建”加入该路径即可;

安装pytorch

参看pytorch的官网,从官网可以得到如下的命令:

C:\\Users\\rainbow\\PycharmProjects\\densenet\\venv\\Scripts\\pip3.6.exe install torch==1.10.0+cu113 torchvision==0.11.1+cu113 torchaudio===0.10.0+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html
pip3 install torch==1.10.0+cu113          \
             torchvision==0.11.1+cu113    \
             torchaudio===0.10.0+cu113    \
             -f https://download.pytorch.org/whl/cu113/torch_stable.html

可以打开这个链接,用迅雷下载:

https://download.pytorch.org/whl/cu113/torch_stable.html

然后离线安装。

   1 ls
   2 cd .\venv\
   3 ls
   4 cd .\Scripts\
   5 ls
   6 clear
   7 ls
   8 .\pip3.exe install torch==1.10.2+cu113 torchvision==0.11.3+cu113 torchaudio===0.10.2+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html
   9 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\python.exe -m pip install --upgrade pip
  10 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.exe install torch==1.10.2+cu113 torchvision==0.11.3+cu113 torchaudio===0.10.2+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html
  11 clear
  12 ls
  13 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install D:\迅雷下载\torch-1.10.2+cu113-cp39-cp39-win_amd64.whl
  14 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install D:\迅雷下载\torchaudio-0.10.2+cu113-cp39-cp39-win_amd64.whl
  15 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install D:\迅雷下载\torchvision-0.11.3+cu113-cp39-cp39-win_amd64.whl
  16 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install D:\迅雷下载\torchvision-0.11.3+cu113-cp39-cp39-win_amd64.whl
  17 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install D:\迅雷下载\torchvision-0.11.3+cu113-cp39-cp39-win_amd64.whl
  18 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install C:\Users\tuhoo\Downloads\numpy-1.22.2-cp39-cp39-win_amd64.whl
  19 D:\PycharmProjects\efficient_densenet_pytorch\venv\Scripts\pip3.9.exe install D:\迅雷下载\torchvision-0.11.3+cu113-cp39-cp39-win_amd64.whl

pip 安装 .whl 的包

pip3 install xxx.whl

测试torch能否用gpu

执行如下的脚本即可测试pytorch是否能使用gpu。

import torch
torch.__version__
torch.cuda.is_available()

输出True即可。

OSError: [WinError 1455]

测试此脚本出现了如下的错误:OSError: [WinError 1455]

页面文件太小,无法完成操作。后来在网上查询后发现其中一个可能的原因是没有设置虚拟内存。按如下的方式设置之后就没有问题了。

按照上图的设置之后,发现GPU已经可以用了。

1.10.0+cu113
True
end

CUBLAS_STATUS_NOT_INITIALIZED

真可谓是好事多磨啊,一个问题解决了,又来了另外一个问题,先按照pytorch把GPU的cuda版本也弄对吧。 换了11.3和11.5的cuda,都有这个问题,之前有查过很多地方,我CPU训练没有问题,应该不是模型出错了,然后再看一下代码发现还有一个地方设置了batch size,我脸都厚黑,改小一点之后就可以正常训练了。

本文来自:https://blog.duhbb.com

本文链接地址:win10安装GPU版的pytorch,英雄不问来路,转载请注明出处,谢谢。

有话想说:那就赶紧去给我留言吧。

rainbow

这个人很懒,什么都没留下

文章评论