环境:
CUDA 11.7 + python 3.6
情况描述
我的CUDA是11.7的,在pytorch官方(https://pytorch.org/)找对应的pytorch,由于CUDA是向下兼容的,我就选择的要求CUDA是11.6的pytorch版本,如下图所示
执行命令:
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116
出现问题
安装完发现torch.cuda.is_available始终返回false,无论重装多少次,都一样。意思就是下载的版本是CPU版本的不是GPU版本的!
原因分析:
经过不断的查资料发现是python版本的问题。
由于之前学习opencv,发现opencv高版本有版权问题,有些东西用不了,所以下载的opencv版本是3.4.1.15版本的。
这个版本的opencv对python版本有要求,所以我下载了3.6版本的python。
打开pytorch离线下载网站(https://download.pytorch.org/whl/torch_stable.html)
其中,cu116表示对应的CUDA为11.6,
cp37表示对应的python版本为3.7
可以看到所有要求CUDA 11.6的pytorch支持的python版本是没有3.6的,所以执行官方给的命令下载下来的pytorch是CPU版本的
解决方案:
选择适合你python版本的pytorch下载即可,
从下图可以看到,适合python3.6版本的pytorch要求的CUDA 为 11.3
再回到pytorch官网,选择CUDA 11.3,如下图
执行命令
pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
下载完成后,查看版本是否为GPU的
执行命令
torch.cuda.is_available()
如果返回为True,则说明为GPU版本的,如下图
另:
如果下载太慢,可以查看这篇文章,更改pip的下载源:
https://blog.csdn.net/qq_46037444/article/details/125985680?spm=1001.2014.3001.5501
文章出处登录后可见!