Несоответствие версии драйвера NVIDIA NVML / библиотеки



когда я запускаю nvidia-smi Я получаю следующее сообщение:



Failed to initialize NVML: Driver/library version mismatch


час назад я получил то же сообщение и удалил свою библиотеку cuda, и я смог запустить nvidia-smi, получаем следующий результат:



nvidia-smi-result



после этого я скачал cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb С официальная страница NVIDIA а потом просто:



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.



выпуск ядра: 4.4.0-66-generic.



спасибо!

1661   3  

3 ответов:

Сюрприз сюрприз, перезагрузка решила проблему (я думал, что уже пробовал это).

решение Роберт Кровелла, упомянутое в комментариях, также может быть полезно кому-то еще, так как оно очень похоже на то, что я сделал, чтобы решить проблему в первый раз, когда у меня это было.

как сказал @etal, перезагрузка может решить эту проблему, но я думаю, что процедура без перезагрузки поможет.

для китайцев, проверьте мой блог ->中文版

сообщение об ошибке

NVML: несоответствие версии драйвера/библиотеки

скажите нам, что модуль ядра драйвера Nvidia (kmod) имеет неправильную версию, поэтому мы должны выгрузить этот драйвер, а затем загрузить правильную версию kmod

как это сделать ?

во-первых, мы должны знать, какие драйверы загружаются.

lsmod / grep nvidia

вы можете узнать

nvidia_uvm            634880  8
nvidia_drm             53248  0
nvidia_modeset        790528  1 nvidia_drm
nvidia              12312576  86 nvidia_modeset,nvidia_uvm

наша конечная цель-разгрузить nvidia mod, поэтому мы должны выгрузить модуль зависит от nvidia

sudo rmmod nvidia_drm
sudo rmmod nvidia_modeset
sudo rmmod nvidia_uvm

затем выгрузить nvidia

sudo rmmod nvidia

устранение неисправностей

если вы получаете сообщение об ошибке, как rmmod: ERROR: Module nvidia is in use, что указывает на то, что модуль ядра используется, Вы должны убить процесс, который использует kmod:

sudo lsof / dev / nvidia*

а затем убить эти процессы, а затем продолжать выгружать kmods

тест

подтвердите, что вы успешно выгрузили эти kmods

lsmod / grep nvidia

вы ничего не должны получить, а затем подтвердите, что вы можете загрузить правильный драйвер

nvidia-smi

вы должны получить правильный вывод

Это также произошло со мной на Ubuntu 16.04 с помощью nvidia-348 пакет (последняя версия nvidia на Ubuntu 16.04).

однако я мог бы решить эту проблему, установив nvidia-390 через проприетарные драйверы GPU PPA.

таким образом, решение описанной проблемы на Ubuntu 16.04 делает это:

  • sudo add-apt-repository ppa:graphics-drivers/ppa
  • sudo apt-get update
  • sudo apt-get install nvidia-390

Примечание: в этом руководстве предполагает чистую установку Ubuntu. Если у вас установлены предыдущие драйверы, перезагрузка migh необходима для перезагрузки всех модулей ядра.

Comments

    Ничего не найдено.