【问题标题】:UserWarning: CUDA initialization:用户警告:CUDA 初始化:
【发布时间】:2022-10-06 21:26:14
【问题描述】:

我在 HPC 集群上使用虚拟环境安装了 Pytorch 1.8.1+cu102。

torch.cuda.is_available() 

给我下面的输出

UserWarning: CUDA initialization: The NVIDIA driver on your system is too old (found version 10010). Please update your GPU driver by downloading and installing a new version from the URL: http://www.nvidia.com/Download/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch version that has been compiled with your version of the CUDA driver. (Triggered internally at  /pytorch/c10/cuda/CUDAFunctions.cpp:109.)
return torch._C._cuda_getDeviceCount() > 0
False

有什么问题?我不确定如何更新驱动程序。我的要求是:

torch==1.8.1+cu102
torch-cluster==1.5.9
torch-geometric==1.7.0
  • \"有什么问题?\"...嗯...错误很明显:\"您系统上的 NVIDIA 驱动程序太旧\"
  • 由于您可能无法更新 HPC 集群上的驱动程序,“或者,请转到:pytorch.org 安装已使用您的 CUDA 驱动程序版本编译的 PyTorch 版本。”应该是前进的方向。

标签: pytorch cuda hpc


【解决方案1】:

我最近在将我的 gpu 容器从 nvidia docker 迁移到 podman 时遇到了这个错误。对我来说,根本原因是 /dev/nvidia-uvm* 文件丢失了 CUDA 显然需要工作。

检查你有没有两个都您的主机系统和您的虚拟机/容器:

# ls -l /dev/nvidia-uvm*
crw-rw-rw- 1 root root 237, 0 Oct  6 21:13 /dev/nvidia-uvm
crw-rw-rw- 1 root root 237, 1 Oct  6 21:13 /dev/nvidia-uvm-tools

在主机上,您可以运行nvidia-modprobe -c 0 -u 来加载内核模块并创建这些开发文件。或者从 ubuntu 中查找 /sbin/create-uvm-dev-node 脚本,他们创建该脚本以解决他们的问题

在容器上,通常 nvidia 运行时脚本会负责传递这些设备文件。如果这没有发生,您可以尝试将显式 --device /dev/nvidia-uvm --device /dev/nvidia-uvm-tools 传递给您的 docker/podman 运行命令。

【讨论】:

    【解决方案2】:

    首先,您需要检查 Pytorch 需要哪个版本。您可以在下面的链接中找到与 Pytorch 对应的 cuda 版本。

    https://pytorch.org/get-started/previous-versions/

    找到版本后,您需要检查该版本是否适用于您的 GPU 设备。您可以在下面的链接中找到该列表。

    https://developer.nvidia.com/cuda-gpus

    如果没有匹配,您需要更改 pytorch 要求或您的 GPU 设备。

    【讨论】:

      猜你喜欢
      • 2020-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-24
      相关资源
      最近更新 更多