当前位置: 首页 > news >正文

Ubuntu下torch.cuda.is_available() 返回 False情况


文章目录

    • 问题描述
    • 解决方法
      • 1.检查 xxx2 环境中的 PyTorch 和 CUDA 版本
      • 2.安装支持 CUDA 的 PyTorch 版本
      • 3.确保环境变量配置正确
      • 4.确保 Python 环境路径正确
    • 总结:


问题描述

xxx1 环境中,PyTorch 能够检测到 CUDA,而在 xxx2 环境中检测不到。出现这种情况通常是因为这两个环境中的 PyTorch 或者 CUDA 安装配置不同,导致一个环境可以正确使用 GPU,而另一个环境无法识别 GPU。

具体情况如下

(xxx1) root@server-4:~$ python
Python 3.11.7 (main, Dec 15 2023, 18:12:31) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> print(torch.__version__)
2.4.0
>>> print(torch.version.cuda)
12.1
>>> print(torch.cuda.is_available())
True
>>> 
(xxx2) root@server-4:~$ python -c "import torch; print(torch.cuda.is_available())"
False

解决方法

1.检查 xxx2 环境中的 PyTorch 和 CUDA 版本

首先,在 xxx2 环境中,检查当前安装的 PyTorch 版本和是否支持 CUDA:

python -c "import torch; print(torch.__version__)"
python -c "import torch; print(torch.version.cuda)"
python -c "import torch; print(torch.cuda.is_available())"

如果 torch.version.cuda 返回 None,说明该环境中的 PyTorch 不支持 CUDA。你需要重新安装支持 CUDA 的 PyTorch 版本。

2.安装支持 CUDA 的 PyTorch 版本

如果 xxx2 环境中的 PyTorch 不支持 CUDA,你可以使用 conda 或 pip 重新安装支持 CUDA 的版本。

先卸载当前的 PyTorch:

conda uninstall pytorch torchvision torchaudio

然后重新安装支持 CUDA 12.1 的 PyTorch:

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

3.确保环境变量配置正确

你可以在 xxx2 环境中检查 LD_LIBRARY_PATH,确保 CUDA 库路径正确配置:

echo $LD_LIBRARY_PATH

它应该指向 /usr/local/cuda/lib64,例如:

export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

有些情况下会有多个CUDA版本冲突

比如你的环境中同时有多个 CUDA 库路径 (/usr/local/cuda 和 /home//data/qiqi/cuda12.1/lib64),这可能导致冲突。
你可以尝试移除或调整环境变量:

export LD_LIBRARY_PATH=/usr/local/cuda/lib64

然后再次检查 PyTorch 是否能够检测到 CUDA:

python -c "import torch; print(torch.cuda.is_available())"

4.确保 Python 环境路径正确

确保你在 xxx2 环境中使用的 Python 解释器是该环境下的,并且与安装的 PyTorch 和 CUDA 兼容。你可以运行以下命令来确认 Python 路径是否指向当前的 xxx2 环境:

which python

它应该指向类似 /home/root/anaconda3/envs/xxx2/bin/python 的路径。

总结:

  • 重新安装 xxx2 环境中的 PyTorch,确保它支持 CUDA。
  • 确保 LD_LIBRARY_PATH 设置正确并且指向/usr/local/cuda/lib64。
  • 检查 Python 路径是否正确指向 xxx2 环境。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 2-75 基于matlab的多尺度小波核svm预测
  • 谷歌浏览器 Google Chrome 禁止扩展.crx更新
  • 二叉树【2.5】代码专项
  • 合宙LuatOS开发板使用说明——Air700ECQ
  • Jenkins:自动化的魔法师,打造无缝CI/CD流水线
  • 企业级WEB应用服务器TOMCAT——超详细攻略
  • spring揭秘10-aop04-基于AspectJ类库注解织入横切逻辑
  • 中科服务器磁盘未断电状态被人拔插导致raid故障,安装系统找不到系统盘 修复raid再次安装系统成功
  • 【第78课】数据库安全RedisCouchDBH2database未授权访问CVE漏洞
  • [数据集][目标检测]红外场景下车辆和行人检测数据集VOC+YOLO格式19069张4类别
  • go gc信息如何查看
  • Linux 离线安装docker和docker-compose
  • 21.2 Netty聊天会话管理
  • VScode常见问题的解决方法
  • 简单实现进度条效果(vue2)
  • 【剑指offer】让抽象问题具体化
  • Git同步原始仓库到Fork仓库中
  • js递归,无限分级树形折叠菜单
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 服务器从安装到部署全过程(二)
  • 给初学者:JavaScript 中数组操作注意点
  • 工程优化暨babel升级小记
  • 聊聊hikari连接池的leakDetectionThreshold
  • 码农张的Bug人生 - 初来乍到
  • 强力优化Rancher k8s中国区的使用体验
  • 视频flv转mp4最快的几种方法(就是不用格式工厂)
  • -- 数据结构 顺序表 --Java
  • 数据科学 第 3 章 11 字符串处理
  • 译自由幺半群
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • Hibernate主键生成策略及选择
  • ​Benvista PhotoZoom Pro 9.0.4新功能介绍
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • ‌前端列表展示1000条大量数据时,后端通常需要进行一定的处理。‌
  • #pragma once与条件编译
  • (2020)Java后端开发----(面试题和笔试题)
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (c语言)strcpy函数用法
  • (Java企业 / 公司项目)点赞业务系统设计-批量查询点赞状态(二)
  • (libusb) usb口自动刷新
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (过滤器)Filter和(监听器)listener
  • (强烈推荐)移动端音视频从零到上手(下)
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (一)基于IDEA的JAVA基础1
  • (译) 函数式 JS #1:简介
  • .gitignore文件_Git:.gitignore
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .net core 6 集成和使用 mongodb
  • .NET 使用配置文件
  • .NET 中创建支持集合初始化器的类型
  • [ 物联网 ]拟合模型解决传感器数据获取中数据与实际值的误差的补偿方法
  • [2008][note]腔内级联拉曼发射的,二极管泵浦多频调Q laser——
  • [C#]winform部署官方yolov10目标检测的onnx模型