【TensorRT】Ubuntu+18.04TensorRT5.1.5.0+ONNX1.4.0+onnx

    技术2023-10-22  80

    为了将pytorch模型转换为onnx,并用tensorrt加速,安装了TensorRT5.1.5+ONNX1.4.0+onnx_tensorrt 5.1

    1.TensorRT功能说明

    TensorRT是NVIDIA 推出的一款基于CUDA和cudnn的神经网络推断加速引擎,相比于一般的深度学习框架,在CPU或者GPU模式下其可提供10X乃至100X的加速,极大提高了深度学习模型在边缘设备上的推断速度。将TensorRT应用在NVIDIA 的TX1或者TX2上,可实现深度学习网络的实时推理,且不需在内存较少的嵌入式设备上部署任何深度学习框架。

    2.基础环境需求

    ubuntu:18.04、python3.6、Cuda10.0、 cudnn7.5.0、tensorflow1.5.0(安装uff需要)

    tensorrt支持的环境和python版本如表所示:

    3.TensorRT 5.1.5.0环境搭建

    (1)安装pycuda

    命令:pip install 'pycuda>=2017.1.1'

    如果要使用python接口的tensorrt,则需要安装pycuda,具体版本可根据实际需求自行选择

    (2) 下载TensorRT安装包

    下载链接:https://developer.nvidia.com/nvidia-tensorrt-download

    注意:需要注册账号才能下载 (3) 安装tensorrt5.1.5.0

    ① 解压:tar xzvf TensorRT-5.1.5.0.Ubuntu-18.04.4.x86_64-gnu.cuda-10.0.tar

    ② 解压得到TensorRT-5.1.5.0的文件夹,将里边的lib绝对路径添加到环境变量中

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/TensorRT-5.1.5.0/lib

    ③ 安装TensorRT

    cd TensorRT-5.1.5.0/python pip install tensorrt-5.1.5.0-cp36-none-linux_x86_64.whl

    ④ 安装UFF

    cd TensorRT-5.1.5.0/uff pip install uff-0.6.3-py2.py3-none-any.whl

    ⑤ 安装graphsurgeon

    cd TensorRT-5.1.5.0/graphsurgeon pip install graphsurgeon-0.4.1-py2.py3-none-any.whl

    ⑥ 修改环境

    为了避免后边deepstream找不到tensorrt的库,建议把tensorrt的库和头文件添加到系统路径下:

    sudo cp -r ./lib/* /usr/lib sudo cp -r ./include/* /usr/include

    ⑦ 测试是否安装成功 4.onnx1.4.0环境搭建

    两种方法:

    ① 运行命令:pip install onnx==1.4.0

    ② 下载安装包,并参照安装说明安装

    https://github.com/onnx/onnx/tree/rel-1.4.0

    注意:branch 选择rel-1.4.0

    5.onnx_tensorrt

    5.1环境搭建

    5.1下载安装包

    https://github.com/onnx/onnx-tensorrt/tree/5.1

    注意: (a) branch一定要选择5.1,不要选择master (b) 下载下来的安装包里/third_party/onnx 下是空的,因此下载onnx源码包,(与pip install onnx不同哦)注意这里一定要选对版本!!onnx1.6 针对的是TensorRT7,我是TensorRT5,于是选了onnx1.4。

    5.2安装protobuf 3.11.4

    安装onnx_tensorrt5/6/7 需要protobuf版本高于3.8 下载地址:https://github.com/protocolbuffers/protobuf/tree/3.11.x

    1.卸载原有版本:

    which protoc rm /path/to.protoc

    2.googletest的安装

    注意: 部分路径不对,通过find命令查找文件所在位置,修改

    git clone https://github.com/google/googletest cd googletest cmake CMakeLists.txt make sudo cp libgtest*.a /usr/lib sudo cp –a include/gtest /usr/include

    3.protobuf的安装

    cd protobuf-3.11.4 ./autogen.sh ./configure make make check make install

    注意:官方文档指出,如果make check 出错,继续执行make install即可

    4.查看安装好的版本

    protoc –version

    5.3安装onnx_tensorrt5.1

    cd onnx-tensorrt-5.1 mkdir build cd build cmake.. -DTENSORRT_ROOT=<tensorrt_install_dir> - DGPU_ARCHS="70" #70为gpu算力 make -j8 make install

    验证安装: onnx_tensorrt文件夹下: 至此,安装完成。

    参考:

    Processed: 0.011, SQL: 9