查询torch版本_【ubuntu痴呆】torch.cuda.is_available()结果为false

查了一下,这个问题应该是因为显卡驱动、cuda版本、torch版本不匹配。但是我朋友在解决这个问题的过程中降级cuda、升级torch都不好使。后来发现这三个版本之间有约束关系,一个对不上都不行。

在conda install torch指定版本的过程中,我发现他会自动给你更新cudatoolkit(到一个可能和你显卡驱动以及你现在安装的torch都不匹配的版本),你还没法拒绝他(在安装过程中好像可以ctrl+c来截断某个安装包的下载,但是我觉得不太正经orz)。我没有尝试单独降级cuda的版本,但我估计他也会自动帮我把torch更新了。所以在这个过程中不能单独改变torch或者cuda的版本,必须同时指定两个版本安装(其实还是对的上就行,只是我用的这个服务器驱动版本比较低,会限制cuda的版本,进而限制torch的版本)。

以下是具体的过程:

先康一康一开始的报错

6a06af3210400720dd93f8010939bf82.png

搜了之后发现是显卡驱动、cuda版本、torch版本对不上,我目前的环境是

Driver Version 384.130 # nvidia-smi
cudatoolkit 8.0 # conda list
torch 1.7.1 # conda list

查看版本之间的对应关系(参考以下链接),发现是我torch版本太高了

Pytorch版本、CUDA版本与显卡驱动版本的对应关系_kelly若的博客-CSDN博客​blog.csdn.net
877d8d5390d812f84d17e3dc9308c000.png

于是降级torch,然后在降级的过程中感觉不太对

conda uninstall torch
conda install pytorch=1.1.0 -c soumith

71b153a1b9a72cd4c35d7be3910f3190.png
好家伙,所以我要装1.1.0的torch就会被自动下载10.0的cudatoolkit,但是我显卡驱动版本最多只能匹配到cuda 9.0版本,那即使我降级了torch还是对不上啊
“当已知CUDA版本时,可根据表2直接查询到对应版本PyTorch,运行conda install pytorch=X.X.X -c pytorch即可安装指定版本PyTorch。此命令由conda决定与PyTorch对应的CUDAToolkit。但不能保证PyTorch可正常使用,CUDAToolkit版本不适配显卡驱动,即可能导致CUDAToolkit版本高于CUDA驱动。”(摘自上面那个链接)

我觉得这应该就是问题所在 ↑↑↑

所以为了保证torch和cuda都是正确的版本,conda install的时候应该同时指定这两个的版本

conda install pytorch=*.*.* cudatoolkit=*.* -c http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main

b10ac54308106bc5ae9e43cd1b1b8254.png
没有自动升级了!

安装完成之后再查看一次torch.cuda.is_available()

91918d317231e571f3642f1c21561c83.png
True!!!!!!

哦吼!好开心!

大概就是这样啦!

不过这之后又出了一点小问题:

cannot import name 'Optional' from 'torch.jit.annotations'

这应该是torchvision版本和torch版本不匹配了kkk 所以更新完torch记得也要更新一下torchvision哇!

torch& torchvision对应版本​www.cnblogs.com

请参考这个链接确定一下torchvision的版本叭!安装方法↓

conda install torchvision==*.*.* -c http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main

耶!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值