我正在尝试通过安装最新的 NVIDIA 驱动程序来为 CUDA 设置我的系统。我已经安装了驱动程序,但运行时仍然出现错误nvidia-smi
~ nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.
收到此消息后,我遵循了一些不同的教程,即这个:apt-get 升级后 Nvidia 显卡驱动程序和 CUDA 出现问题\
但是当我尝试清除旧驱动程序时,出现错误:
~ sudo apt-get purge nvidia*
zsh: no matches found: nvidia* (**EDIT**: THIS HAS BEEN FIXED, I CAN NOW PURGE, but that didn't help)
但是,我无法安装最新的驱动程序,因为它们已经安装好了。
~ sudo apt-get install nvidia-driver-396
Reading package lists... Done
Building dependency tree
Reading state information... Done
nvidia-driver-396 is already the newest version (396.54-0ubuntu0~gpu18.04.1).
The following packages were automatically installed and are no longer required:
libnvidia-common-390 libwayland-client0:i386 libwayland-server0:i386
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
我认为目前最好的办法仍然是删除并重新安装驱动程序,但我不确定该怎么做。我也不知道为什么驱动程序没有被使用。
补充笔记:
lsmod | grep nvidia
dmesg | grep NVRM
也不会返回任何内容。
为什么司机仍未注册?如能提供任何帮助,我们将不胜感激。
编辑 我可以清除现有的 nvidia 并再试一次,但它仍然不起作用。
问题似乎在于 nouveau 没有被正确禁用。
当我检查正在使用哪个驱动程序时:
➜ Documents sudo lshw -class video | grep driver=
configuration: driver=nouveau latency=0
configuration: driver=i915 latency=0
所以它还在那里。我曾经使用过这个网站https://linuxconfig.org/how-to-disable-nouveau-nvidia-driver-on-ubuntu-18-04-bionic-beaver-linux 指导我如何禁用它。运行以下命令可获得预期结果:
➜ Documents cat /etc/modprobe.d/blacklist-nvidia-nouveau.conf
blacklist nouveau
options nouveau modeset=0
但它仍然不起作用。你有什么想法吗?
答案1
如果你清除了 nvidia 驱动程序然后重新安装它们,你需要prime-select
来回切换到 intel 然后返回到 nvidia:
prime-select intel
prime-select nvidia
此后nvidia-smi
应该会成功。
答案2
嗯,这可能很难,如果我没记错的话,nvidia 官方仅支持 CUDA 16.04 和 17.10。因此,可能需要付出一些努力才能使其与 18.04 配合使用,您是否查看过 nvidia 论坛上是否有相关指导。