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
相关推荐
神奇的海马体1 小时前
Kubeasz工具快速部署K8Sv1.27版本集群(二进制方式)
docker·容器·kubernetes·kubeasz
Psycho_MrZhang2 小时前
Docker DockerFile和Django最佳实践
数据库·docker·django
一面千人2 小时前
从零开始:基于 PyTorch 的图像分类模型
pytorch·深度学习·cnn·图像分类·模型优化·cifar-10·调试经验·前沿趋势
墨绿色的摆渡人2 小时前
pytorch小记(十二):pytorch中 masked_fill_() vs. masked_fill() 详解
人工智能·pytorch·python
迷鹿鹿鹿鹿鹿2 小时前
【基于深度学习的验证码识别】---- part3数据加载、模型等API介绍(1)
人工智能·pytorch·爬虫·深度学习
scdifsn2 小时前
动手学深度学习11.9. Adadelta-笔记&练习(PyTorch)
pytorch·笔记·深度学习·优化器·adadelta算法
海鸥815 小时前
在K8S中挂载 Secret 到 Pod
云原生·容器·kubernetes
幻风_huanfeng6 小时前
每天五分钟玩转深度学习PyTorch:基于pytorch搭建LSTM和GRU模型
人工智能·pytorch·深度学习·gru·lstm·循环神经网络
love530love6 小时前
巧用符号链接搬移C盘中的软件数据目录到其他盘
运维·开发语言·windows·docker
kaikai_sk6 小时前
Docker和Dify学习笔记
笔记·学习·docker