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

docker 内 pytorch cuda 不可用

拉的官方 docker 仓库里的镜像
nvidia/cuda:12.4.1-cudnn-devel-rockylinux8

conda 安装2.5.0 的 pytorch 后,使用 cuda 报错

(myenv) [root@000b4321253c opt]# python test1.py 
可用 GPU 数量: 1
检测 CUDA 时出错: Unexpected error from cudaGetDeviceCount(). Did you run some cuda functions before calling NumCudaDevices() that might have already set an error? Error 804: forward compatibility was attempted on non supported HW

我的 test1.py 代码

import torch

try:
    device_count = torch.cuda.device_count()
    print("可用 GPU 数量:", device_count)
    for i in range(device_count):
        print(f"GPU {i}: {torch.cuda.get_device_name(i)}")
except Exception as e:
    print("检测 CUDA 时出错:", e)

nvidia-smi 可以执行

直接贴原因:
NVIDIA 在 /usr/local/cuda/compat/ 目录下提供了一些兼容库 (libcuda.so.1 等),但如果主机的 NVIDIA 驱动版本较新,则不需要这些兼容库。强行使用这些库可能会导致不匹配的 CUDA 版本,从而触发 Error 804。

解决方案:

rm -rf /usr/local/cuda/compat

相关文章:

  • 基于虚拟知识图谱的语义化决策引擎
  • 算法设计——最坏时间复杂度分析
  • 【算法】十大排序算法(含时间复杂度、核心思想)
  • langfuse追踪Trace
  • 数据结构与算法--数字转字符串方法数
  • 数据结构之栈(C语言)
  • RabbitMQ实现路由模式发送接收消息
  • “零拷贝”(Zero-Copy)技术详解以及使用场景
  • 内网渗透-端口转发
  • 【NLP 40、文本生成任务】
  • 【AI大模型】搭建本地大模型GPT-NeoX:详细步骤及常见问题处理
  • 通往自主智能之路:探索自我成长的AI
  • 图像处理全流程指南(OpenCV 实现)
  • 2025-03-23 学习记录--C/C++-C语言 sprintf()实现将多个值按指定格式拼接成字符串
  • 国产达梦(DM)数据库的安装(Linux系统)
  • 设计模式:创建型、结构型、行为型
  • Linux 系统运行 Android 应用的几种方案
  • 为什么EasyExcel能处理大数据量而不内存溢出,EasyExcel原理
  • Linux__之__基于UDP的Socket编程网络通信
  • LLaMA-Factory微调大模型
  • “一百零一个愿望——汉字艺术展”亮相意大利威尼斯
  • 书法需从字外看,书法家、学者吴本清辞世
  • 为何发胖?如何减肥?一个医学体重管理中心的探索启示
  • 苏东坡:人生就是哈哈哈哈哈
  • 重温经典|开播20周年,仙剑的那些幕后你知道吗?
  • 马上评丨全民定制公交,打开城市出行想象空间