torch.cuda.is_available()显示false的原因

GTX2060
pytorch 1.6
cuda 10.2
cudnn 7.6.5
各方面都安装适配的特别好,可是不知道为什么就显示调用不上CUDA。

查了好久,发现pytorch可能也分为CPU和GPU版本的,虽然不像tensorflow那样有不同的名字(tensorflow-gpu,tensorflow),但是如果在conda中直接执行一下命令

conda install pytorch=xxx

安装的将会是CPU版本的,此时无论你的CUDA和CUDNN适配的多好,torch.cuda.is_available()都会显示false。因为你的cuda压根就没有用在torch上
一个很好的判断方法:

torch.version.cuda

如果确实是安装了gpu版本的pytorch,上面这个应该会显示cuda的版本,如果是cpu,则会显示None
好像只有运行如下命令:

conda install pytorch cudatookits=xx

一起安装,才会默认安装为gpu的pytorch,我也不知道为啥。

其实直接去pytorch的官网上有可以照搬的命令最方便了。
https://pytorch.org/
…有条件的可以去。
在这里插入图片描述
最后附终于搞成功的截图:
在这里插入图片描述

### PyTorch `torch.cuda.is_available()` 返回 False原因分析 当遇到 `torch.cuda.is_available()` 返回 `False` 时,通常意味着当前环境未能成功识别到可用的 GPU 设备。这可能是由于多种因素造成的。 #### 安装了错误版本的 PyTorch 一种常见的情况是误安装了仅支持 CPU 版本的 PyTorch 而不是 CUDA 加速版[^2]。为了确认这一点,可以查看当初安装命令是否指定了特定硬件加速选项;对于希望启用 GPU 支持的应用场景而言,则应确保选择了带有 CUDA 后缀的包名来完成安装过程。 #### 验证 CUDA 和 cuDNN 是否正确配置 即使已经安装了合适的 PyTorch 版本,如果系统上的 NVIDIA 显卡驱动程序、CUDA 工具链或者 cuDNN 库存在兼容性问题或未被正确设置的话,也会导致此函数返回负值。建议按照官方文档指导检查并更新这些组件至相互匹配且稳定的版本组合[^1]。 #### 测试代码样例 可以通过下面这段简单的 Python 代码片段快速验证当前环境中是否存在可访问的 GPU: ```python import torch if not torch.cuda.is_available(): print("CUDA is not available.") else: device_count = torch.cuda.device_count() current_device_name = torch.cuda.get_device_name(0) print(f"CUDA is available with {device_count} devices, using '{current_device_name}' as the primary one.") ``` 上述脚本能帮助进一步诊断具体状况,并提供有关所连接图形处理单元的信息反馈。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值