这个问题来源于我想用我电脑的古董显卡跑一个开源程序,结果测试的时候下面的代码输出False,我就无法用显卡跑。
import torch
print(torch.cuda.is_available())
目录
一、确定pytorch版本
首先要先确定代码用的pytorch版本或者本机的pytorch版本,因为pytorch 的版本和cuda版本是有一个对应关系的。下面是我需要的pytorch版本,pytorch1.6,
二、确定cuda版本,下载cuda
在官网上找到对应的cuda版本Previous PyTorch Versions | PyTorch
可以看到匹配的cuda版本是cuda 9.2,cuda10.1,cuda10.2。
一般电脑硬件都是支持的,只要电脑显卡支持的版本大于这个版本就可以。可以在NVIDIA控制面板查看。我的支持到11.8是可以的。如果自己的nvidia版本过高或者过低,但是官网展示的驱动版本列表不符合你的要求,可以参考下面的教程,增加驱动列表的长度,找到合适的驱动的版本。如何下载英伟达nvidia旧版显卡驱动,一顿操作猛如虎,居然给我找到了方法 - 哔哩哔哩
所以就可以开始安装了,先去官网找对应的10.2版本安装CUDA Toolkit Archive | NVIDIA Developer
三、下载对应版本的cuDNN
这几个支持的随便选一个下载都行,
cuDNN Archive | NVIDIA Developer
下载后解压,然后将cuDNN中bin,include,lib文件夹里的文件,分别复制到CUDA的bin,include,lid文件夹中。
四、验证是否安装成功
来到cuda安装的文件地址,在里面找到bandwidthTest.exe,按住shift键,右击 bandwidthTest.exe文件,复制文件地址,然后打开cmd直接粘贴进去然后回车。看到pass就是对了
如果有问题的话 ,就配一下环境变量。一般都会自动配置上环境变量的。
五、安装对应版本的pytorch
https://download.pytorch.org/whl/torch_stable.html 去这个网站下载对应的轮子
最前面是cu102,就是cuda10.2版本的意思
下载结束以后,打开cmd ,cd到whl文件所在的位置,运行命令:pip install whl文件的名字 ,就可以安装pytorch了。
比如:
pip install torch-1.6.0-cp37-cp37m-win_amd64.whl
六、最后
最后再运行一下
import torch
print(torch.cuda.is_available())
返回True就可以了