TAO v5.5.0

tao/tao-toolkit/text/excerpts/tensorrt_oss_on_x86.html

在 x86 上构建 TensorRT OSS

  1. 安装 Cmake (>=3.13)。

    注意

    TensorRT OSS 需要 cmake >= v3.13,因此如果您的 cmake 版本低于 3.13c,请安装 cmake 3.13

    sudo apt remove --purge --auto-remove cmake
    wget https://github.com/Kitware/CMake/releases/download/v3.13.5/cmake-3.13.5.tar.gz
    tar xvf cmake-3.13.5.tar.gz
    cd cmake-3.13.5/
    ./configure
    make -j$(nproc)
    sudo make install
    sudo ln -s /usr/local/bin/cmake /usr/bin/cmake
    
  2. 获取 GPU 架构。GPU_ARCHS 值可以通过 deviceQuery CUDA 示例检索

    cd /usr/local/cuda/samples/1_Utilities/deviceQuery
    sudo make
    ./deviceQuery
    

    如果您的系统中不存在 /usr/local/cuda/samples,您可以从此 GitHub 仓库下载 deviceQuery.cpp。编译并运行 deviceQuery

    nvcc deviceQuery.cpp -o deviceQuery
    ./deviceQuery
    

    此命令将输出如下内容,表明 GPU_ARCHS 基于 CUDA Capability 主/次版本为 75

    Detected 2 CUDA Capable device(s)
    
    Device 0: "Tesla T4"
      CUDA Driver Version / Runtime Version          10.2 / 10.2
      CUDA Capability Major/Minor version number:    7.5
    
  3. 构建 TensorRT OSS

    git clone -b 21.08 https://github.com/nvidia/TensorRT
    cd TensorRT/
    git submodule update --init --recursive
    export TRT_SOURCE=`pwd`
    cd $TRT_SOURCE
    mkdir -p build && cd build
    

    注意

    确保步骤 2 中的 GPU_ARCHS 在 TensorRT OSS CMakeLists.txt 中。如果 GPU_ARCHS 不在 TensorRT OSS CMakeLists.txt 中,请添加 -DGPU_ARCHS=<VER>,如下所示,其中 <VER> 表示步骤 2 中的 GPU_ARCHS

    /usr/local/bin/cmake .. -DGPU_ARCHS=xy  -DTRT_LIB_DIR=/usr/lib/x86_64-linux-gnu/ -DCMAKE_C_COMPILER=/usr/bin/gcc -DTRT_BIN_DIR=`pwd`/out
    make nvinfer_plugin -j$(nproc)
    

    构建成功结束后,libnvinfer_plugin.so* 将在 \`pwd\`/out/. 下生成。

  4. 替换原始的 libnvinfer_plugin.so*

    sudo mv /usr/lib/x86_64-linux-gnu/libnvinfer_plugin.so.8.x.y ${HOME}/libnvinfer_plugin.so.8.x.y.bak   // backup original libnvinfer_plugin.so.x.y
    sudo cp $TRT_SOURCE/`pwd`/out/libnvinfer_plugin.so.8.m.n  /usr/lib/x86_64-linux-gnu/libnvinfer_plugin.so.8.x.y
    sudo ldconfig
    
© 版权所有 2024, NVIDIA。 上次更新于 2024 年 10 月 15 日。