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
相关推荐
bloglin9999919 小时前
启动容器报错ls: cannot access ‘/docker-entrypoint-initdb.d/‘: Operation not permitted
docker·容器·eureka
songjxin20 小时前
离线部署kubernetes v1.34.3
云原生·容器·kubernetes
yBmZlQzJ21 小时前
免费内网穿透-端口转发配置介绍
运维·经验分享·docker·容器·1024程序员节
JH307321 小时前
docker 新手入门:10分钟搞定基础使用
运维·docker·容器
baby_hua1 天前
20251024_PyTorch深度学习快速入门教程
人工智能·pytorch·深度学习
天河归来1 天前
在本地windows电脑使用Docker搭建xinference环境
docker·语言模型·容器
算力魔方AIPC1 天前
使用 Docker 一键部署 PaddleOCR-VL: 新手保姆级教程
运维·docker·容器
熊出没1 天前
Kubernetes 实操命令大全
云原生·容器·kubernetes
Ghost Face...1 天前
Docker实战:从安装到多容器编排指南
运维·docker·容器
TSAI1 天前
Docker Swarm 集群部署 Eureka 服务注册中心:高可用微服务架构的基石
spring cloud·docker