Impossible de charger la bibliothèque dynamique 'libnvinfer.so.6'

13

J'essaie d'importer normalement le package python TensorFlow, mais j'obtiens l'erreur suivante:

entrez la description de l'image ici

Voici le texte de l'image du terminal ci-dessus:

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'
saman jahangiri
la source
Texte, s'il vous plaît! Copiez / collez depuis le terminal.
phd
Quel OS? Avez-vous installé toutes les bibliothèques nécessaires?
phd
C'est Ubuntu. Existe-t-il des bibliothèques nécessaires pour tensorflow?
saman jahangiri

Réponses:

16

Ceci est un avertissement, pas une erreur. Vous pouvez toujours utiliser TensorFlow. Les bibliothèques partagées libnvinferet libnvinfer_pluginsont facultatives et obligatoires uniquement si vous utilisez les capacités TensorRT de nvidia.

Les instructions d'installation de TensorFlow répertorient les dépendances GPU:

Le logiciel NVIDIA® suivant doit être installé sur votre système:

  • Pilotes GPU NVIDIA® —CUDA 10.1 nécessite 418.x ou supérieur.
  • CUDA® Toolkit —TensorFlow prend en charge CUDA 10.1 (TensorFlow> = 2.1.0)
  • CUPTI est livré avec la boîte à outils CUDA.
  • SDK cuDNN (> = 7,6)
  • (Facultatif) TensorRT 6.0 pour améliorer la latence et le débit pour l'inférence sur certains modèles.

Vous pouvez les installer sur Ubuntu 18.04 avec les commandes suivantes (extraites de la documentation 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
jakub
la source
Existe-t-il un moyen de supprimer cet avertissement, tel qu'il apparaît sur le terminal chaque fois que j'exécute le fichier python?
inullpointer
1
Pour supprimer tous les avertissements de tensorflow, vous pouvez définir la variable d'environnement TF_CPP_MIN_LOG_LEVEL="2".
jakub
I tensorflow / stream_executor / platform / default / dso_loader.cc: 44] Bibliothèque dynamique ouverte avec succès libnvinfer.so.6
Hrushi
1
Après avoir correctement installé selon la réponse, obtenir le commentaire ci-dessus chaque fois que j'importe des keras. Qu'est-ce qui devrait être fait?
Hrushi
0

La plupart de ces messages sont des avertissements et non des erreurs. Ils signifient simplement que les bibliothèques pour utiliser un GPU Nvidia ne sont pas installées, mais vous n'avez pas besoin d'avoir de GPU Nvidia pour utiliser Tensorflow, vous n'avez donc pas besoin de ces bibliothèques. Le commentaire de jakub indique comment désactiver les avertissements:

export TF_CPP_MIN_LOG_LEVEL="2"

Cependant, moi aussi, j'exécute Tensorflow sans Nvidia et il y a un autre message qui est une erreur, pas un avertissement:

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

Cela ne devrait pas être pertinent car il fait également référence au cuda, qui concerne Nvidia. Cela ne semble pas être une erreur fatale.

zizzler
la source
0

J'ai reçu cet avertissement suite à la mise à jour (accidentelle) du paquet libvnifer6. Il a été mis à jour 6.0.1-1+cuda10.2pendant l'installation d'origine 6.0.1-1+cuda10.1.

Après avoir désinstallé les packages référençant cuda10.2et relancé

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

cet avertissement a disparu.

Yevgen Yampolskiy
la source