前言
迫于学校不让开学,不得已收了块N卡在家里学习,顺便记录下配环境的过程和踩过的坑
首先说一下最坑的
下载cuda之前千万要去确认一下想要使用的深度学习库支持的最高的cuda的版本。
我就在目前(2020.2.22)pytorch和tensorflow最高都只支持到10.1的情况下安装了10.2发生了很多错误,之后又换回了10.1,但是安装过程大同小异主要是懒,就用10.2的图了。
Anaconda安装与配置
- 直接去官网下载最新版,安装过程中会询问是否自动添加环境变量,很多教程都表示不要勾选之后手动添加,但是我一直自动添加目前还没出现过问题···
- 更换清华源 由于众所周知的原因我们访问国外镜像会很慢,可参考清华镜像站的教程将anaconda换为清华源
安装cuda10.1
nv官网中有各版本cuda,下载10.1版本。一开始下的在线安装非常慢,换用了离线安装包。
过程中选用自定义安装,由于之前装了最新的显卡驱动且暂时不用VS,所以选择组件如下:
安装过程中自动添加了环境变量如下,最后一个nvsmi需要手动添加,各位把10.2换成10.1就行:
安装完成后命令行输入nvcc -V
显示cuda版本则安装成功。同时还可以输入nvidia-smi
查看显卡信息
安装cuDNN 7.6.5
cuDNN官网下载:[link](https://developer.nvidia.com/rdp/cudnn-download
需要注册developer账号才能下载,不知道是否需要科学上网因为我一直开着,注册之后才能看到7.6.5。下载后解压,直接把 cuda 文件夹里的 bin, include, lib里的文件分别复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1对应的文件夹中
pyTorch安装
anaconda中新建虚拟环境
conda create -n envname python =3.7
conda activate envname
这里出现一个小插曲,在pytorch官网上没有发现对cuda10.2版本的pytorch,后来在一个pytorch论坛中发现了如下解释,大概就是使用conda安装pytorch时;里边已经有cuda和cudnn了,这一点在我卸载cuda10.2之后仍然能运行pytorch和通过下面的检测上可以证实。
即直接在虚拟环境中使用conda install pytorch torchvision cudatoolkit=10.1 -c pytorch
安装即可。
加载pytorch输入版本号验证是否安装成功
python
import torch
print(torch.__version__)
接下来检测当前Pytorch和设备是否支持CUDA和cudnn,新建py文件输入以下代码
# Summary: 检测当前Pytorch和设备是否支持CUDA和cudnn
# Author: Amusi
# Date: 2018-12-20
# github: https://github.com/amusi/PyTorch-From-Zero-To-One
import torch
if __name__ == '__main__':
print("Support CUDA ?: ", torch.cuda.is_available())
x = torch.Tensor([1.0])
xx = x.cuda()
print(xx)
y = torch.randn(2, 3)
yy = y.cuda()
print(yy)
zz = xx + yy
print(zz)
# CUDNN TEST
from torch.backends import cudnn
print("Support cudnn ?: ",cudnn.is_acceptable(xx))
tensorflow安装
目前还没用过tensorflow,先安一下试试。
我从网上看到,目前1.14和2.1之后的tensorflow好像可以支持cuda10.1。同样conda安装的tensorflow好像也集成了cuda和cudnn,但是据说可能会出现各种问题,pip安装的则没有。总之,确认好想要使用的版本和cuda版本的对应关系,安装后在python中import tensorflow 没有任何显示说明完美成功。