44 votes

Tensorflow: ImportError: libcusolver..8.0: ne peut ouvrir le fichier objet partagé: Aucun fichier ou répertoire

Je vais avoir des problèmes dans l'importation de tensorflow en python3:

>>> import tensorflow as tf
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/usr/lib/python3.5/imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "/usr/lib/python3.5/imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/__init__.py", line 51, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 52, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper
    _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description)
  File "/usr/lib/python3.5/imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "/usr/lib/python3.5/imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/install_sources#common_installation_problems

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

Je suis en utilisant des pilotes Nvidia version 381.09 bêta, la version 375 a ce bug: https://askubuntu.com/questions/896221/strange-artifacts-along-window-borders-after-waking-computer-from-sleep-mode?noredirect=1&lq=1

J'ai installer CUDA 8.0 et cuDNN-v6.0:

rharish@rharish-GL552VW:~$ cd /usr/local
rharish@rharish-GL552VW:/usr/local$ ls
bin         cuda      etc    include  man   share
computecpp  cuda-8.0  games  lib      sbin  src

Aussi, libcusolver..8.0 existe dans /usr/local/cuda/lib64/:

libcusolver..8.0 dans 'ls' sortie

Je l'ai désinstallé et réinstallé CUDA, cuDNN, et construit tensorflow à partir des sources. Ce problème a été rencontré depuis la mise à jour des pilotes Nvidia pour la version 381.09 bêta. Toute aide?

41voto

Harish Rajagopal Points 715

Trouvé la solution:

J'ai réinstallé nvidia-381, CUDA-8.0 (à l'aide de la runfile) et cuDNN 6.0. Ensuite, j'ai ajouté ce qui suit dans mon .bashrc:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/

9voto

James Hirschorn Points 31

Pas besoin de réinstallation. Installez nvidia-cuda-dev:

sudo apt install nvidia-cuda-dev

Installez cuDNN (que vous téléchargez à partir de https://developer.nvidia.com/cudnn), et mis en LD_LIBRARY_PATH en conséquence ( cuda/lib64).

4voto

Davidjb Points 995

Vous pourriez avoir ce problème si vous avez installé la dernière version de CUDA (9.0). Si c'est le cas, vous aurez la libcusolver.donc.9.0 fichier ou un répertoire sur votre ordinateur, mais pas 8.0, de sorte que python ne peut pas le trouver à l'importation. Tensorflow ne prend pas encore en charge CUDA 9.0 (à compter du 18 octobre 2017).

Pour résoudre ce problème, installer CUDA 8.0, qui peut être trouvé ici. Vous pouvez trouver tous leur héritage communiqués à la partie inférieure de la page de téléchargement.

0voto

Picarus Points 298

En plus d'avoir correctement les chemins ensemble, la version de Tensorflow vous avez installé doit être compatible avec le CUDA de la version du pilote que vous avez dans votre système, sinon ça ne fonctionne pas. Voir le lien

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X