Не вдалося завантажити динамічну бібліотеку 'libnvinfer.so.6'


13

Я намагаюся нормально імпортувати пакет python TensorFlow, але я отримую таку помилку:

введіть тут опис зображення

Ось текст із наведеного зображення терміналу:

2020-02-23 19:01:06.163940: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libnvinfer.so.6'; dlerror: libnvinfer.so.6: cannot open shared object file: No such file or directory
2020-02-23 19:01:06.164019: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libnvinfer_plugin.so.6'; dlerror: libnvinfer_plugin.so.6: cannot open shared object file: No such file or directory
2020-02-23 19:01:06.164030: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:30] Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
<module 'tensorflow_core._api.v2.version' from '/home/saman/miniconda3/envs/testconda/lib/python3.7/site-packages/tensorflow_core/_api/v2/version/__init__.py'

Текст, будь ласка! Скопіюйте / вставте з терміналу.
пт

Яка ОС? Ви встановили всі необхідні бібліотеки?
пт


Це Ubuntu. Чи є необхідні бібліотеки для tensorflow?
Саман Джахангірі

Відповіді:


16

Це попередження, а не помилка. Ви все ще можете використовувати TensorFlow. Загальні бібліотеки libnvinferі НЕ libnvinfer_pluginє обов'язковими , і потрібно тільки при використанні Нвідіі TensorRT можливості.

Інструкції з установки TensorFlow перераховують залежність від GPU:

У вашій системі має бути встановлено наступне програмне забезпечення NVIDIA®:

  • Драйвери GPU NVIDIA® —CUDA 10.1 вимагає 418.x або вище.
  • Інструментарій CUDA® —TensorFlow підтримує CUDA 10.1 (TensorFlow> = 2.1.0)
  • CUPTI поставляється з інструментарієм CUDA.
  • cuDNN SDK (> = 7,6)
  • (Необов’язково) TensorRT 6.0 для покращення затримки та пропускної здатності для висновку на деяких моделях.

Ви можете встановити їх на Ubuntu 18.04 за допомогою таких команд (взяті з документації на TensorFlow ):

# Add NVIDIA package repositories
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
sudo apt-get update
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt-get update

# Install NVIDIA driver
sudo apt-get install --no-install-recommends nvidia-driver-430
# Reboot. Check that GPUs are visible using the command: nvidia-smi

# Install development and runtime libraries (~4GB)
sudo apt-get install --no-install-recommends \
    cuda-10-1 \
    libcudnn7=7.6.4.38-1+cuda10.1  \
    libcudnn7-dev=7.6.4.38-1+cuda10.1


# Install TensorRT. Requires that libcudnn7 is installed above.
sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 \
    libnvinfer-dev=6.0.1-1+cuda10.1 \
    libnvinfer-plugin6=6.0.1-1+cuda10.1

Чи є спосіб придушити це попередження, оскільки воно з’являється на терміналі щоразу, коли я виконую файл python?
inullpointer

1
Щоб придушити всі десяткові застереження, можна встановити змінну середовища TF_CPP_MIN_LOG_LEVEL="2".
Якуб

I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] Динамічна бібліотека успішно відкрита libnvinfer.so.6
Груші

1
Після успішної установки відповідно до відповіді, отримуючи вищезазначений коментар щоразу, коли я імпортую кери. Що робити?
Груші

0

Більшість цих повідомлень - це попередження, а не помилки. Вони просто означають, що бібліотеки для використання графічного процесора Nvidia не встановлені, але вам не потрібно мати GPU Nvidia, щоб використовувати Tensorflow, щоб ці бібліотеки вам не потрібні. Коментар Якуба розповідає, як вимкнути попередження:

export TF_CPP_MIN_LOG_LEVEL="2"

Однак я теж запускаю Tensorflow без речей Nvidia, і є ще одне повідомлення, яке є помилкою, а не попередженням:

2020-04-10 10:04:13.365696: E tensorflow/stream_executor/cuda/cuda_driver.cc:351] failed call to cuInit: UNKNOWN ERROR (303)

Це має бути неактуальним, оскільки воно теж стосується куди, що є для Nvidia. Здається, це не є фатальною помилкою.


0

Я отримав це попередження в результаті (випадкового) оновлення пакета libvnifer6. Він оновлювався до 6.0.1-1+cuda10.2початкової установки 6.0.1-1+cuda10.1.

Після того, як я видалив пакунки, на які посилався cuda10.2і повторно запускався

sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 \
    libnvinfer-dev=6.0.1-1+cuda10.1 \
    libnvinfer-plugin6=6.0.1-1+cuda10.1

це попередження пішло.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.