gpt4 book ai didi

python - 如何为 Cuda 找到正确的 libnvinfer 版本

转载 作者:行者123 更新时间:2023-12-02 18:38:02 30 4
gpt4 key购买 nike

我正在构建一个 Docker 镜像,用于深度学习:

cuda:11.2.0-cudnn8-devel-ubuntu20.04
PYTHON_VERSION=3.7.9

对于此任务,我需要安装 3 个依赖项,但我找不到正确的版本。构建 Docker 镜像时出现的错误:

E: Version '8.1.1.33-1+cuda11.2' for 'libnvinfer8' was not found E:Version '8.1.1.33-1+cuda11.2' for 'libnvinfer-dev' was not found E:Version '8.1.1.33-1+cuda11.2' for 'libnvinfer-plugin8' was not found

我也尝试过其他版本,但没有成功,所以问题是:在哪里/如何找到适用于 cuda 11.2 和 ubuntu 20.04 的正确版本。有经验法则吗?

最佳答案

检查您的 TensorRT 版本 tensorflow安装预计:

>>> import tensorflow
>>> tensorflow.__version__
'2.8.0'
>>> from tensorflow.python.compiler.tensorrt import trt_convert as trt
>>> trt.trt_utils._pywrap_py_utils.get_linked_tensorrt_version()
(7, 2, 2)
>>> trt.trt_utils._pywrap_py_utils.get_loaded_tensorrt_version()
2022-03-24 08:59:15.415733: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer.so.7'; dlerror: libnvinfer.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/local/nvidia/lib:/usr/local/nvidia/lib64

最后一个命令显示确实 libnvinfer.so您的系统上缺少该文件(您也可以使用 ldconfig -p | grep libnv 检查此事实)。

要安装它(改编自 Tensorflow 的 gpu.Dockerfile ),请在上面的输出中获取 TensorRT 版本,仔细检查它是否适用于 nvidia repository 上的 CUDA 版本。 ,然后安装:

export LIBNVINFER=7.2.2 LIBNVINFER_MAJOR_VERSION=7 CUDA_VERSION=11.0
apt-get install -y libnvinfer${LIBNVINFER_MAJOR_VERSION}=${LIBNVINFER}-1+${CUDA_VERSION} libnvinfer-plugin${LIBNVINFER_MAJOR_VERSION}=${LIBNVINFER}-1+${CUDA_VERSION}

上面的最后一个 Python 命令现在应该开始工作。如果您再次遇到类似的错误,请仔细检查 so 文件位置(使用 ldconfig -p | grep libnv 检查)是否包含在 LD_LIBRARY_PATH 中。 .

还要仔细检查您的 CUDA 版本。就我而言,我正在运行 docker.io/nvidia/cuda:11.5.1-cudnn8-runtime-ubuntu20.04图像,其中已包含 math libraries具体来说libnvrtc.so.11.2 (因此,对于比 TensorRT 在 nvidia 存储库上支持的更新的 CUDA 版本)。运行 apt-get 后,这一点变得明显上面的命令给出了这个输出:

The following packages have unmet dependencies:
libnvinfer7 : Depends: cuda-nvrtc-11-0 but it is not going to be installed

关于python - 如何为 Cuda 找到正确的 libnvinfer 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68450867/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com