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
相关推荐
Listennnn8 分钟前
PyTorch 中如何针对 GPU 和 TPU 使用不同的处理方式
人工智能·pytorch·python
大G哥2 小时前
19_大模型微调和训练之-基于LLamaFactory+LoRA微调LLama3
人工智能·pytorch·python·深度学习·计算机视觉
ayiya_Oese4 小时前
[数据处理] 6. 数据可视化
人工智能·pytorch·python·深度学习·机器学习·信息可视化
alden_ygq4 小时前
金丝雀/灰度/蓝绿发布的详解
云原生·容器·kubernetes·devops
伊织code6 小时前
PyTorch API 10 - benchmark、data、批处理、命名张量
pytorch·python·ai·api·-·10
alden_ygq6 小时前
Kubernetes排错(十)-常见网络故障排查
云原生·容器·kubernetes
zxy987 小时前
Docker、Docker-compose、K8s、Docker swarm之间的区别
docker·kubernetes
alden_ygq8 小时前
K8S服务的请求访问转发原理
云原生·容器·kubernetes
Francek Chen8 小时前
【现代深度学习技术】注意力机制04:Bahdanau注意力
人工智能·pytorch·深度学习·神经网络·注意力机制
Mr_wilson_liu9 小时前
k8s删除pv和pvc后,vg存储没释放分析
云原生·容器·kubernetes