【发布时间】:2020-11-29 04:01:19
【问题描述】:
我正在尝试构建一个可以使用 GPUS 运行的 docker 映像,这是我的情况:
我有 python 3.6,我从图像 nvidia/cuda:10.0-cudnn7-devel 开始。 Torch 看不到我的 GPU。
nvidia-smi 也不工作,返回错误:
> Failed to initialize NVML: Unknown Error
> The command '/bin/sh -c nvidia-smi' returned a non-zero code: 255
我安装了 nvidia 工具包和 nvidia-smi
RUN apt install nvidia-cuda-toolkit -y
RUN apt-get install nvidia-utils-410 -y
【问题讨论】:
-
如果 nvidia-smi 失败,您的驱动程序安装已损坏,或者 docker 容器内的驱动程序实用程序版本与主机系统驱动程序版本不匹配。您的两个问题都不是与 CUDA 编程相关的问题,我很快就会从两者中删除 CUDA 标签。另外,第一个问题是否应该作为此问题的副本关闭?
-
如果您从图像
nvidia/cuda:10.0-cudnn7-devel开始,则不需要安装nvidia-cuda-toolkit,绝对没有理由安装nvidia-utils-410。第二次安装破坏了图像。相反,您应该从您想要的nvidia/cuda映像开始(例如您想要使用的 CUDA 版本和 CUDNN 版本),并且不要安装任何与 GPU 驱动程序组件有关的东西,这就是-410所表示的.相反,请确保您的基础机器设置了 the NVIDIA container toolkit 和最新的 GPU 驱动程序 -
@RobertCrovella 我安装了这些,因为之前我没有
nvidia-smi返回“/bin/sh: 1: nvidia-smi: not found”。 nvidia 容器工具包安装在基础机器中(例如docker run --gpus all nvidia/cuda:10.0-base nvidia-smi工作得很好)。