docker 内 pytorch cuda 不可用

拉的官方 docker 仓库里的镜像

nvidia/cuda:12.4.1-cudnn-devel-rockylinux8

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

go 复制代码
(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 代码

go 复制代码
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。

解决方案:

go 复制代码
rm -rf /usr/local/cuda/compat
相关推荐
木易双人青2 小时前
01-Docker-简介、安装与使用
运维·docker·容器
Caven776 小时前
【pytorch】reshape的使用
pytorch·python
无规则ai6 小时前
动手学深度学习(pytorch版):第四章节—多层感知机(5)权重衰减
人工智能·pytorch·python·深度学习
罗不俷7 小时前
【RH134知识点问答题】第13章:运行容器
容器·rhel
雷达学弱狗9 小时前
backward怎么计算的是torch.tensor(2.0, requires_grad=True)变量的梯度
人工智能·pytorch·深度学习
AI大模型10 小时前
基于 Docker 的 LLaMA-Factory 全流程部署指南
docker·llm·llama
tb_first11 小时前
k8sday11服务发现(2/2)
docker·云原生·容器·kubernetes·k8s
发愤图强的羔羊12 小时前
Docker 搭建 SVN 服务器
docker
为了摸鱼而战12 小时前
Dockerfile知识点梳理,你要搞懂的都在这
docker
Clownseven13 小时前
Docker+Nginx+Node.js实战教程:从零搭建高可用的前后端分离项目
nginx·docker·node.js