Tidak dapat memuat pustaka dinamis 'libnvinfer.so.6'

13

Saya mencoba mengimpor paket python TensorFlow secara normal, tetapi saya mendapatkan kesalahan berikut:

masukkan deskripsi gambar di sini

Berikut ini teks dari gambar terminal di atas:

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
sumber
Tolong SMS! Salin / tempel dari terminal.
phd
OS apa? Sudahkah Anda menginstal semua perpustakaan yang diperlukan?
phd
Itu adalah Ubuntu. Apakah ada perpustakaan yang diperlukan untuk tensorflow?
saman jahangiri

Jawaban:

16

Ini peringatan, bukan kesalahan. Anda masih bisa menggunakan TensorFlow. Pustaka bersama libnvinferdan libnvinfer_pluginbersifat opsional dan hanya diperlukan jika Anda menggunakan kemampuan TensorRT nvidia.

Petunjuk pemasangan TensorFlow mencantumkan dependensi GPU:

Perangkat lunak NVIDIA® berikut harus diinstal pada sistem Anda:

  • Driver GPU NVIDIA® —CUDA 10.1 membutuhkan 418.x atau lebih tinggi.
  • CUDA® Toolkit —TensorFlow mendukung CUDA 10.1 (TensorFlow> = 2.1.0)
  • CUPTI dikirimkan dengan CUDA Toolkit.
  • cuDNN SDK (> = 7.6)
  • (Opsional) TensorRT 6.0 untuk meningkatkan latensi dan keluaran untuk inferensi pada beberapa model.

Anda dapat menginstal ini di Ubuntu 18.04 dengan perintah berikut (diambil dari dokumentasi 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
sumber
Apakah ada cara untuk menekan peringatan ini, seperti yang muncul di terminal setiap kali saya mengeksekusi file python?
inullpointer
1
Untuk menekan semua peringatan tensorflow, dapat mengatur variabel lingkungan TF_CPP_MIN_LOG_LEVEL="2".
jakub
Saya tensorflow / stream_executor / platform / default / dso_loader.cc: 44] Berhasil membuka perpustakaan dinamis libnvinfer.so.6
Hrushi
1
Setelah berhasil menginstal sesuai jawaban, dapatkan komentar di atas setiap kali saya impor keras. Apa yang harus dilakukan?
Hrushi
0

Sebagian besar dari pesan ini adalah peringatan, bukan kesalahan. Mereka hanya berarti perpustakaan untuk menggunakan GPU Nvidia tidak diinstal, tetapi Anda tidak harus memiliki GPU Nvidia untuk menggunakan Tensorflow sehingga Anda tidak perlu perpustakaan ini. Komentar dari jakub memberi tahu cara mematikan peringatan:

export TF_CPP_MIN_LOG_LEVEL="2"

Namun, saya juga menjalankan Tensorflow tanpa hal-hal Nvidia dan ada satu pesan lagi yang merupakan kesalahan, bukan peringatan:

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

Itu harus tidak relevan karena itu juga merujuk pada cuda, yang untuk Nvidia. Namun sepertinya itu bukan kesalahan fatal.

zizzler
sumber
0

Saya mendapat peringatan ini sebagai hasil dari pembaruan (tidak disengaja) dari paket libvnifer6. Itu diperbarui 6.0.1-1+cuda10.2saat instalasi asli digunakan 6.0.1-1+cuda10.1.

Setelah saya uninstall paket referensi cuda10.2dan berlari kembali

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

peringatan ini hilang.

Yevgen Yampolskiy
sumber