Failed to initialize NVML: Driver/library version mismatch
跑Cifar,发现训练时间很长,仔细一看,原来cudaGetDeviceCount()返回的是0,就是说没有找到GPU,没有用GPU跑,是在用CPU跑,难怪时间这么长.
在终端输入nvidia-smi,出现了以下错误:
Failed to initialize NVML: Driver/library version mismatch.
出现这个错误的原因在于NVIDIA内核驱动版本与系统内核版本不一致.
在终端输入以下命令:
cat /var/log/dpkg.log | grep nvidia
发现系统驱动libnvidia-common从470.199升级到了470.223,输入:
cat /proc/driver/nvidia/version
发现显卡驱动内核版本还是470.199,可能是Ubuntu自动更新了,造成了两个版本不一致.
解决的办法也很简单,重启一次就可以了:
sudo reboot
重启以后,两个版本一致了,GPU也可以运行了.