- 参考文档
- 项目README
- https://github.com/NVIDIA/TensorRT/blob/release/7.1/README.md
- 相关ISSUES
- https://github.com/NVIDIA/TensorRT/issues/1168
- https://github.com/NVIDIA/TensorRT/issues/942
- 项目README
下载SDKManager
-
选择相关设备和版本,具体如图所示
-
勾选协议,下下载后安装,下载过程中最好链接VPN否则,下载速度过慢。
-
等待下载完成
下载TensorRT
- Clone code (目前测试该版本可以使用,目前的master无法编译通过(2021年6月22日17点44分))
git clone -b release/7.1 https://github.com/nvidia/TensorRT TensorRT
- 其余过程与README.md 文件过程一致。
生成镜像
将SDKmanger下载文件,copy到 tensorrt/docker/jetpack_files 目录下
编译demo
- 按照README.md 启动相应的docker image. 进入启动的容器
- 拷贝一些缺失的库文件到容器中
- 从nx 设备中拷贝cuda相关文件/usr/local/cuda/targets/aarch64-linux
- /usr/lib/aarch64-linux-gnu/libEGL.so.1
- /usr/lib/aarch64-linux-gnu/libGLdispatch.so.0
- 以及/usr/lib/aarch64-linux-gnu/tegra目录下的库文件
- 缺失的库,先在本地查找对应ISA的版本,当不存在时,从设备中拷贝。
- 执行对应的cmake 命令
cmake .. -DTRT_LIB_DIR=$TRT_RELEASE/lib -DTRT_OUT_DIR=`pwd`/out -DCMAKE_TOOLCHAIN_FILE=$TRT_SOURCE/cmake/toolchains/cmake_aarch64.toolchain -DCMAKE_CUDA_SEPARABLE_COMPILATION=OFF -DCUDA_VERSION=10.2 -DCUBLASLT_LIB="/usr/lib/aarch64-linux-gnu/libcublasLt.so" -DCUBLAS_LIB="/usr/lib/aarch64-linux-gnu/libcublas.so" -DCUDNN_LIB="/pdk_files/cudnn/lib/libcudnn.so.8"
- 支持make
make -j$(nproc)