Подтвердить что ты не робот

Tensorflow: ImportError: libcusolver.so.8.0: невозможно открыть файл общих объектов: нет такого файла или каталога

У меня возникают проблемы с импортом shadoworflow в 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.

Я использую версию Nvidia версии 381.09 beta, так как версия 375 имеет эту ошибку: https://askubuntu.com/info/896221/strange-artifacts-along-window-borders-after-waking-computer-from-sleep-mode?noredirect=1&lq=1

У меня установлена ​​CUDA 8.0 и cuDNN-v6.0:

[email protected]:~$ cd /usr/local
[email protected]2VW:/usr/local$ ls
bin         cuda      etc    include  man   share
computecpp  cuda-8.0  games  lib      sbin  src

Кроме того, libcusolver.so.8.0 существует в /usr/local/cuda/lib 64/:

libcusolver.so.8.0 в 'ls' output

Я удалил и переустановил CUDA, cuDNN и построил тензорный поток из источников. Эта проблема возникает с момента обновления драйверов Nvidia до бета-версии версии 381.09. Любая помощь?

4b9b3361

Ответ 1

Найдено решение:

Я заново установил nvidia-381, CUDA-8.0 (используя файл runfile) и cuDNN 6.0. Затем я добавил следующее в свой .bashrc:

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

Ответ 2

Не нужно переустанавливать. Установите nvidia-cuda-dev:

sudo apt install nvidia-cuda-dev

Установите cuDNN (который вы загружаете из https://developer.nvidia.com/cudnn) и установите LD_LIBRARY_PATH соответственно (на cuda/lib64).

Ответ 3

У вас может возникнуть эта проблема, если вы установили последнюю версию CUDA (9.0). Если это так, у вас будет файл libcusolver.so.9.0 или каталог на вашем компьютере, но не 8.0, поэтому python не сможет его импортировать. Tensorflow пока не поддерживает CUDA 9.0 (по состоянию на 18 октября 2017 года).

Чтобы исправить это, установите CUDA 8.0, который можно найти здесь. Вы можете найти все устаревшие версии в нижней части главной страницы загрузки.

Ответ 4

В дополнение к правильной установке путей, установленная версия Tensorflow должна быть совместима с версией драйвера CUDA, установленной в вашей системе, иначе она не будет работать. Смотрите ссылку link

Ответ 5

Я столкнулся с этой ошибкой из-за несовместимости версии Tensorflow с CUDA. У меня были tensorflow_gpu-1.3.0, CUDA 9 и cuDNN 7, которые несовместимы с этим https://www.tensorflow.org/install/source#tested_build_configurations

поэтому я удалил tensorflow_gpu-1.3.0 и установил tensorflow_gpu-1.5.0, и он работал нормально