torch.cuda.is_available()返回False可能不是因为cuda或者cudnn没装好
问题:
之前在远程服务器上安装python的GPU运行环境,远程服务器上已经有了cuda和cudnn的配置(这是实验室服务器的基础配置),但是我执行torch.cuda.is_available()老是返回false。
解决:
我之前一直认为是我的cudnn没装好,因为执行:
nvcc -V
是有返回cuda的版本的。
然后对于torch:
import torch
torch.__version__
也是能返回版本号的
所以我就对这两个的安装深信不疑。(哭死)
然而今天去找朋友解决,卸载了torch(请在你的虚拟环境中执行):
conda uninstall torch torchvision torchaudio
卸载完后可以用:
conda list
查看是否卸载完了
然后重装torch,在torch官网选择自己的配置:
我的cuda是10.1版本的,这个在nvcc -V命令中就可以查到,注意:使用nvidia-smi命令查看的图形框中的第一行最后一栏:CUDA Version:11.0指的是当前的NVIDIA驱动最高能支持的版本。
选择好你的配置后就复制下面的命令在你的虚拟环境终端中运行。
下载完成后在python环境中测试你的torch是否安装好了:
import torch
如果没有报错,就OK了,然后测试你的torch和cuda、cudnn是否协同成功:
print(torch.cuda.is_available())
输出True
大功告成!!!