错误:NVIDIA-SMI 失败,因为它无法与 NVIDIA 驱动程序通信
Posted
技术标签:
【中文标题】错误:NVIDIA-SMI 失败,因为它无法与 NVIDIA 驱动程序通信【英文标题】:Error: NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver 【发布时间】:2018-08-17 14:38:15 【问题描述】:NVIDIA-SMI 抛出此错误:
NVIDIA-SMI 失败,因为它无法与 NVIDIA 通信 司机。确保安装了最新的 NVIDIA 驱动程序并且 运行
我清除了 NVIDIA 并按照here 中提到的步骤重新安装。
我的设备规格如下:
带有 Tesla M40 的服务器 在 Ubuntu 16.04 上运行 内核版本 Linux 4.4.0-116-generic x86_64 驱动程序:nvidia-384有人可以帮忙解决这个错误吗?
【问题讨论】:
【参考方案1】:此问题可能是由于 4.4.0-116 补丁中已确认的“错误”。我在 nvidia-390 上遇到了同样的问题。如果您仍想使用更新版本的 Nvidia-driver,我按照说明here 并设法解决了问题。一般来说,使用以下步骤:
-
如果无法登录桌面并进入失败循环,请按ctrl + alt + F1 登录命令行模式。
检查gcc的版本是否过时,如果是,更新一下:
gcc --version
如果gcc版本为5+,请先卸载nvidia驱动:sudo apt-get remove nvidia-390
清除 4.4.0-116 内核:sudo apt-get purge linux-headers-4.4.0-116 linux-headers-4.4.0-116-generic linux-image-4.4.0-116-generic linux-image-extra-4.4.0-116-generic linux-signed-image-4.4.0-116-generic
重装内核:sudo apt-get install linux-generic linux-signed-generic
重新安装nvidia-390:sudo apt-get install nvidia-390
检查问题是否被modinfo nvidia-390 -k 4.4.0-116-generic | grep vermagic
解决,确保retpoline这次出现
重启:sudo reboot
希望这对您和遇到相同问题的其他人有用。论坛中的帖子拯救了我的周末。
【讨论】:
我在第 7 步遇到错误。modinfo:错误:找不到模块别名 nvidia-387。 aerin@capa:~$ libkmod: ERROR ../libkmod/libkmod.c:586 kmod_search_moddep: could not open moddep file '/lib/modules/4.4.0-116-generic/modules.dep.bin' 对不起,我没有说清楚,该步骤的命令应该取决于您的NVIDIA驱动程序版本,我忘记更改其他帖子的版本,现在编辑。【参考方案2】:注意:这个答案来自 2018 年,适用于非常过时的 Ubuntu 16.04。不要在最近的 Ubuntu 版本上尝试这个。
试试
-
从here下载驱动
sudo apt-get purge nvidia*
- 删除您当前的安装
dpkg -i nvidia-diag-driver-local-repo-ubuntu1604_375.66-1_amd64.deb
- 安装您之前下载的内容
sudo apt-get update
sudo apt-get install cuda-drivers
在此之后,继续并重新启动您的计算机。
当它再次启动时,nvidia-smi
命令应该可以顺利运行
【讨论】:
我按照上述步骤操作,现在当我输入“nvidia-smi”时,它会抛出以下错误“modprobe: ERROR: could not insert 'nvidia_387': Exec format error NVIDIA-SMI has failed because it can' t 与 NVIDIA 驱动程序通信。确保已安装并运行最新的 NVIDIA 驱动程序。" 你有哪张卡?以及您安装了哪个 nvidia 驱动程序? 我已添加服务器规格。 sudo apt-get install nvidia-375 正在尝试安装 nvidia-375 和 nvidia-384。 nvidia-smi 即使在安装 nvidia-375 之后也会出现同样的错误。 最后一次尝试,我已经更新了答案,尝试并关注它【参考方案3】:要下载此答案的最新驱动程序:
sudo apt install libnvidia-compute-435 libnvidia-compute-435
sudo apt install libnvidia-gl-435 nvidia-dkms-435 nvidia-kernel-source-435
nvidia-utils-435 xserver-xorg-video-nvidia-435 libnvidia-ifr1-435
sudo apt install nvidia-driver-435
sudo reboot
然后:
nvidia-smi
【讨论】:
【参考方案4】:如果您在 Google Colab 上运行它,只需转到运行时 > 更改运行时类型 > 选择 GPU。这对我有用。
【讨论】:
以上是关于错误:NVIDIA-SMI 失败,因为它无法与 NVIDIA 驱动程序通信的主要内容,如果未能解决你的问题,请参考以下文章
nvidia-smi 命令可以与 nvidia 驱动程序 microsoft azure dsvm 通信
nvidia-smi 无法初始化 NVML:GPU 访问被操作系统阻止
infoPlist.strings 读取失败:无法读取数据,因为它的格式不正确