[pytorch] torch.cuda.is_available() False 解决方法

        进入虚拟环境后pip list查看虚拟环境里的包,已有torch以及对应的版本号,但是torch调用cuda失败,情况如下:

 出现这种情况通常是下载了CPU版本的pytorch,一般通过命令下载的pytorch(包括官网提供的命令)是CPU版本的,可以通过查询anaconda里的安装包判断是否安装了CPU版本的pytorch。打开安装anaconda的磁盘/anaconda/pkgs文件:

        可以看到其实是安装的是CPU版本的pytorch,所以我们首先pip uninstall torch 将现在的CPU版本的pytorch卸载,顺便也把torchvision卸载。

方法一:进入下面这个网址找到对应cuda版本的pytorch,然后复制pip下载。

Previous PyTorch Versions | PyTorch
 

方法二:然后到下面的网站下载GPU版本的pytorch:

Previous PyTorch Versions | PyTorch

        进网站后,由于内容特别多,我们用搜索功能ctrl+f,比如我的cuda是11.0版本,就输入cu110,假如是cuda11.3版本,就输入cu113。然后选择想要的pytorch版本,cp38表示虚拟环境是python3.8的环境,torchvision也可以通过这个方法获得。 

        最后我们将下载的whl文件放到你所创建的虚拟环境的Script文件中

然后直接在该目录处输入cmd,进入命令行窗口

 输入:pip install 完整的whl文件名。比如pip install torch-1.7.1+cu110-cp38-cp38-win_amd64.whl

安装完成后,再次尝试,成功!

### 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.") ``` 上述脚本能帮助进一步诊断具体状况,并提供有关所连接图形处理单元的信息反馈。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值