1.由于网上教程很多,本人顺利的部分(1.更新nvidia驱动;2.CUDA10安装;3.cuDNN 7 安装)不赘述,建议参考该链接:
windows10下安装GPU版pytorch简明教程 - 知乎
本人安装版本(21.06 如下图):
前排提醒,建议装cuda 10.02的版本,高版本的yolov5 train 会显示
box obj nan nan (我是cuda 11.1,他也能运行yolov5 算法,但是不能训练,这是唯一区别)
这是我更换后的版本(如下图):
(1) cuda_10.2 下载网址(如下图):https://developer.nvidia.com/cuda-10.2-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal
(2) cudnn下载完成后,解压,复制下列三个文件夹(如下图)
黏贴到cuda安装目录下(如下图)
(3) 用命令行安装torch 和 torchvision:
pip3 install torch==1.10.2+cu102 torchvision==0.11.3+cu102 torchaudio===0.10.2+cu102 -f https://download.pytorch.org/whl/cu102/torch_stable.html
pip install torch==1.10.0+cu113 torchvision==0.11.0+cu113 torchaudio==0.10.0 -f https://download.pytorch.org/whl/torch_stable.html
安装结果(如下图):
这时训练时,box obj就不会是nan nan了(如下图),
提醒:有些windows系统版本过低时,是无法安装新版本的显卡驱动的,会显示DCH driver 发生冲突。可以win+r,然后输入winver查看自己的系统版本。只要更新系统版本至18000.0以上就行,下图所示是可以安装的版本。我在一台老版本的微型电脑上版本为1703(OS内部版本 15063.608)安装驱动,就遇到了DCH driver 冲突的问题。
2.参考该教程时,在“PyTorch安装”模块遇到了问题,虽然最后成功安装,但是torch.cuda.is_available()的返回值是False。
最后在检查了安装的CUDA版本和系统支持的最高CUDA驱动版本无误后,楼主综合多种方法,最后成功解决了该问题,特此记录。
我的情况如下:2021.6.30号安装成功,显卡NVIDIA GeForce GTX 1660 Ti
nvcc -V
NVIDIA-smi
检查GPU驱动版本
这里直接在NVIDIA官网,看下CUDA版本以及GPU驱动的对应关系:
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
通过上表可以发现,如果要使用CUDA11.1,那么需要将显卡的驱动更新至455.23或以上(Linux x86_64环境)
CUDA版本以及GPU驱动的对应关系:比如文件名为cuda_11.1.1_456.81_win10
则456.81是指GPU驱动要大于等于456.81
对照torch版本和torchvision、python的版本对应关系
1.首先在官网PyTorch,找到适合自己的版本,可以直接获得命令行
第一次是直接在Anaconda Prompt里直接运行该命令行,但是两次均在下载torch(1.56G)到14%时下载中断,换清华源和中科大、北外源均不行。
2.后来选择Pip类:
直接复制命令“pip3 install torch==1.9.0+cu111 torchvision==0.10.0+cu111 torchaudio===0.9.0 -f https://download.pytorch.org/whl/torch_stable.html”,会显示无法识别pip3,改为pip,则会显示无法识别torch==1.9.0+cu111版本。
3.但是,我们可以直接下载以上安装包到本地,下载网址:
https://download.pytorch.org/whl/torch_stable.html
然后找到上面官网命令行中的版本(一定要仔细查看,对照Python和Win的版本):
torch==1.9.0+cu111
torchvision==0.10.0+cu111
torchaudio===0.9.0
我所使用的这三个安装包,如下所示
然后在Anaconda Prompt里输入 pip install +安装包名字
可以直接拖入,这样就自动添加了安装包的路径,然后回车
4.安装完成后,输入conda list,可以看到如下结果
检验结果如下:
conda list
python
import torch
torch.cuda.is_available()
torch.__version__
OK