当我运行nvidia-smi时,我得到以下消息:
初始化NVML失败:驱动程序/库版本不匹配
一小时前,我收到了同样的消息,卸载了我的CUDA库,我能够运行nvidia-smi,得到以下结果:
之后,我从NVIDIA官方页面下载了cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb,然后简单地:
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
现在我已经安装了CUDA,但我得到了前面提到的不匹配错误。
一些可能有用的信息:
运行cat /proc/driver/nvidia/version得到:
NVRM version: NVIDIA UNIX x86_64 Kernel Module 378.13 Tue Feb 7 20:10:06 PST 2017
GCC version: gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
我正在运行Ubuntu 16.04.2 LTS (Xenial Xerus)。
内核发行版是4.4.0-66-generic。
前两个答案不能解决我的问题。我在英伟达官方论坛上找到了一个解决方案。
以下错误信息可能是由于使用不同的方法安装了两个不同版本的驱动程序而导致的。例如,通过APT和官方安装程序安装Nvidia驱动。
初始化NVML失败:驱动程序/库版本不匹配
为了解决这个问题,只需要执行以下两个命令中的一个。
sudo apt-get --purge remove "*nvidia*"
sudo /usr/bin/nvidia-uninstall
我也有这个问题(我正在运行Ubuntu 18.04 (Bionic Beaver))。
我做了什么:
DPKG -l | grep -i nvidia
然后
sudo apt-get remove—清除nvidia-381(和每个重复的版本,在我的情况下,我有381,384和387)
然后sudo ubuntu驱动设备列出可用的设备。
我选择sudo apt install nvidia-driver-430。
之后,nvidia-smi给出了正确的输出(不需要重新启动)。但我想你有疑问的时候可以重启。
我还按照这个安装重新安装cuda+cudnn。
我在Ubuntu 16.04上使用Nvidia -348包(Ubuntu 16.04上的最新Nvidia版本)时也遇到了这种情况。
不过,我可以通过专有GPU驱动程序PPA安装nvidia-390来解决这个问题。
因此,在Ubuntu 16.04上解决上述问题的方法是这样做的:
Sudo add-apt-repository ppa:graphics-drivers/ppa
Sudo apt-get update
安装nvidia-390
注意:本指南假设Ubuntu安装干净。如果您安装了以前的驱动程序,可能需要重新启动以重新加载所有内核模块。
前两个答案不能解决我的问题。我在英伟达官方论坛上找到了一个解决方案。
以下错误信息可能是由于使用不同的方法安装了两个不同版本的驱动程序而导致的。例如,通过APT和官方安装程序安装Nvidia驱动。
初始化NVML失败:驱动程序/库版本不匹配
为了解决这个问题,只需要执行以下两个命令中的一个。
sudo apt-get --purge remove "*nvidia*"
sudo /usr/bin/nvidia-uninstall
我必须重新启动内核并删除之前安装的所有包(在第一次安装期间)。请确保删除所有的包,即使在删除包后使用下面的命令:
sudo apt-get --purge remove "*nvidia*"
像“libtinfo6:i386”这样的包不会被删除。
我使用的是Ubuntu 20.04 (Focal Fossa)和Nvidia-driver-440。为此,您必须删除下图所示的所有包。
所有需要删除的包的列表:
如图所示,确保您正在安装的包的大小正确。Nvidia-driver-440的内存为207 MB。如果它更少,这意味着您还没有删除所有的包。