(本人最终安装的版本:cuda11.6,cudnn8.4.0,torch1.12.0,torchvision0.13.0,torchaudio0.12.0)
安装配置anaconda后(前一章),该配置pytorch
一、安装cuda
先安装conda cuda ,去官网https://developer.nvidia.com/cuda-toolkit-archive ,下载对应版本的CUDA。(先查看电脑中的支持的cuda版本,再选择比该版本低的进行下载)我下载的是cuda11.6
安装cuda时,第一次会让设置临时解压目录,第二次会让设置安装目录;
临时解压路径,建议默认即可,也可以自定义。安装结束后,临时解压文件夹会自动删除;注意:临时解压目录千万不要和cuda的安装路径设置成一样的,否则安装结束,会找不到安装目录的!!!
因为电脑里没有VS,所以在后面会提示把VS取消勾选。
安装位置就最好不要修改,选择默认位置,否则就会发下下载完后cuda会在你的下载路径里消失。
检查是否安装完成:nvcc -V
安装完成后,配置cuda的环境变量;
需要四条,前两条会自动配好,后两个变量没有自动生成,没有生成的手动添加就行。
NVCUDASAMPLES_ROOT
NVCUDASAMPLES11_0_ROOT
运行cmd,输入nvcc --version 即可查看版本号;
set cuda,可以查看 CUDA 设置的环境变量。
二、安装cudnn
下载链接cuDNN Archive | NVIDIA Developer
选择合适的版本,
需要创建NVIDIA账户,按流程完成即可。
下载之后,解压缩,将压缩包里面的bin、clude、lib文件直接复制到CUDA的安装目录下,直接覆盖安装。(其实就是替换)
到这里,cudnn安装完成!
有了之后,直接用conda创建虚拟环境
cuda create -n pp python=3.7
激活当前环境
activate pp
三、配置conda镜像源
由于pytorch文件较大,且conda原始下载渠道较为不稳定,因此需要使用其他镜像源进行pytroch的下载及安装,本次使用为清华镜像源。
执行:
conda config --set show_channel_urls yes
会在下面的目录中生成一个.condarc文件。打开该文件,将里面的内容替换成:
channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/
- defaults
show_channel_urls: true
default_channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https//mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
remote_read_timeout_secs: 1000.0
ssl_verify: false
运行 conda clean -i
清除索引缓存,保证用的是镜像站提供的索引。
四、安装pytorch
方法一:
在pythorch官网中PyTorch选择合适的版本,复制最下方的代码,粘贴到cmd中,如果不成功,尝试将-c pytorch去掉。
大家如果想在自己电脑(具有NVIDIA显卡)上跑通代码,就选CUDA,如果不需要在自己电脑上跑(在服务器上跑)或者没有独立显卡,就选CPU。
运行前将-c pytorch去掉,主要原因是加-c pytorch后还会使用默认的conda镜像源而不是清华镜像源。
conda install pytorch torchvision torchaudio pytorch-cuda=11.6 -c nvidia
运行后,将会安装pytorch相关依赖,由于文件比较大,需要一定的时间。所以最好选择第二种方法。
方法二:
(如果下载特别慢,可以去torch镜像源直接下载安装包,效果一样)
下面这个链接是torch和torchvision的对应关系查询,这俩的版本和python版本、cuda版本都必须对应好。https://github.com/pytorch/vision#installation。具体如下:
也可以通过Previous PyTorch Versions | PyTorch查看torch、torchaudio和torchvision对应版本。
1、我的cuda是11.6,python3.7,win系统,所以选择如下版本。
2、在上一步选择了torch1.12.0版本后,在https://github.com/pytorch/vision#installation 中找到对应的torchvision版本,即0.13.0。然后在https://download.pytorch.org/whl/torch_stable.html中下载。
通过Previous PyTorch Versions | PyTorch 查看对应的torchaudio版本。即0.12.0
然后在https://download.pytorch.org/whl/torch_stable.html中下载三个文件
下载完毕后,打开cmd,在需要的虚拟环境中,切换到这三个whl文件的目录下,执行pip install 文件名。安装三个文件。
pip install三个个文件后,输入pip list查看。
测试是否安装完成:
import torch
print(torch.__version__) #显示版本
print(torch.cuda.is_available()) #
若输入版本号,且为true,即为成功。
!!踩坑!如果torch.cuda.is_available()返回false
如果你遇到这个问题,不用担心你的步骤是不是错了,因为你被conda镜像安装给坑了。你以为下载的是GPU版本,其实镜像下载的是cpu版本,你必须手动去官网用pip下载安装。
1、先查看cuda\cudnn版本是否都对。
执行nvcc --version
是cuda11.6版本。
2、查看该虚拟环境下安装的pytorch\torchvision版本是否对应cuda11.6。
显然,出了问题。
能看到,安装的torch是cpu版本。
如果你的CUDA,cuDNN版本都对,只有Pytorch安装成了CPU的,那么先对它进行卸载,然后再安装。
卸载方法:删除该虚拟环境的lib->site-packages中的torch、torchaudio和torchvision的六个文件,
再重新安装正确的torch及torch vision。
五、!!!如果没有cuda,用cpu下载。
!!!激活虚拟环境,但尝试失败,出现了如下问题:
Solving environment: failed wit。h initial frozen solve. Retrying with flexible solve.
查了半天解决办法,无法解决 后来才发现 ,本电脑中没有英伟达显卡,相当于GPU作废 不能用GPU学深度学习。好吧 ,那只能从GPU转到CPU咯。
好的 ,重新回到创建虚拟环境那一步。我创建的环境是python37,查看如下:
激活虚拟环境
在官网中找到和所需匹配的pytorch版本,可以点下方查看更多版本,
复制所需版本的代码段,下面是我所需的。
pip install torch==1.8.0+cpu torchvision==0.9.0+cpu torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html
(或者通过 https://download.pytorch.org/whl/torch_stable.html 找到合适的whl下载)
下载完毕后,在当前python37环境下,查看torch是否安装成功