NVIDIA NVML Driver/library version mismatch


Cuando corro nvidia-smi recibo el siguiente mensaje:

Failed to initialize NVML: Driver/library version mismatch

Hace una hora recibí el mismo mensaje y desinstalé mi biblioteca cuda y pude ejecutar nvidia-smi, obteniendo el siguiente resultado:

nvidia-smi-resultado

Después de esto descargué cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb desde la página oficial de NVIDIA y luego simplemente:

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}}

Ahora tengo cuda instalado, pero me sale el error de desajuste mencionado.


Alguna información potencialmente útil:

Corriendo cat /proc/driver/nvidia/version Tengo:

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)

Estoy ejecutando Ubuntu 16.04.2 LTS.

La versión del kernel es: 4.4.0-66-generic.

Gracias!

Author: etal, 2017-03-26

3 answers

Sorpresa sorpresa, reiniciar resolvió el problema (pensé que ya lo había intentado).

La solución que Robert Crovella mencionó en los comentarios también puede ser útil para otra persona, ya que es bastante similar a lo que hice para resolver el problema la primera vez que lo tuve.

 148
Author: etal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-12 15:04:24

Como dijo @etal, reiniciar puede resolver este problema, pero creo que un procedimiento sin reiniciar ayudará.

Para chino, revisa mi blog - > 中文 {

El mensaje de error

NVML: Desajuste de versión del controlador / biblioteca

Díganos que el módulo de kernel del controlador Nvidia (kmod) tiene una versión incorrecta, por lo que debemos descargar este controlador, y luego cargar la versión correcta de kmod

¿Cómo hacer eso ?

Primero, debemos saber qué controladores son cargar.

Lsmod / grep nvidia

Usted puede obtener

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

Nuestro objetivo final es descargar nvidia mod, por lo que debemos descargar el módulo depende de nvidia

Sudo rmmod nvidia_drm
sudo rmmod nvidia_modeset
sudo rmmod nvidia_uvm

Luego, descarga nvidia

Sudo rmmod nvidia

Solución de problemas

Si obtiene un error como rmmod: ERROR: Module nvidia is in use, que indica que el módulo del núcleo está en uso, debe matar el proceso que usando el kmod:

Sudo lsof/dev / nvidia *

Y luego mata esos procesos, luego continúa descargando los kmods

Prueba

Confirma que has descargado correctamente esos kmods

Lsmod / grep nvidia

No debe obtener nada, luego confirme que puede cargar el controlador correcto

Nvidia-smi

Debe obtener la salida correcta

 124
Author: Comzyh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-07-26 12:11:42

Esto también me sucedió en Ubuntu 16.04 usando el paquete nvidia-348 (última versión de nvidia en Ubuntu 16.04).

Sin embargo, podría resolver el problema instalando nvidia-390 a través de los Controladores de GPU propietarios PPA.

Así que una solución al problema descrito en Ubuntu 16.04 es hacer esto:

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

Nota: Esta guía asume una instalación limpia de Ubuntu. Si tiene controladores anteriores instalados puede ser necesario reiniciar para recargar todos los módulos del núcleo.

 2
Author: Stefan Horning,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-09 09:41:56