TensorRT 安装实战:4 步搭好深度学习推理加速环境
2026/9/12 12:51:09 网站建设 项目流程

TensorRT 安装实战:4 步搭好深度学习推理加速环境

【免费下载链接】TensorRTNVIDIA® TensorRT™ is an SDK for high-performance deep learning inference on NVIDIA GPUs. This repository contains the open source components of TensorRT.项目地址: https://gitcode.com/GitHub_Trending/tens/TensorRT

TensorRT 是 NVIDIA 的深度学习推理加速 SDK:它把训练好的模型做层融合、降精度,再编译成针对你 GPU 定制的推理引擎,让你不改业务代码就能拿到成倍的推理提速。这篇指南带你核对环境、装好库、跑通第一个引擎,最后讲清楚它到底快在哪。

装之前:环境核对清单 ✅

动手前花两分钟把下面几项对一遍,能帮你避开后面 80% 的编译报错。

  • 操作系统:Ubuntu 22.04 / 24.04 体验最顺(仓库 docker/ 目录带了这些系统的现成 Dockerfile);Windows 10+、Jetson(aarch64)也支持。
  • CUDA:官方推荐 13.3.0 或 12.9.0。关键点:它必须和你要下载的 TensorRT 包配套,版本不匹配会在 cmake 阶段直接报错。
  • cuDNN:8.9 即可。只有你的构建需要 cuDNN 后端时才装,可选。
  • Python:3.10 ~ 3.14。11.x 移除了 3.9 及以下版本的绑定,老版本 pip 装不上。
  • 构建工具:cmake ≥ 3.31、GNU make ≥ 4.1、pip ≥ 19.0,外加 git、pkg-config、wget。
  • TensorRT GA 包:开源仓库(本仓库)只含插件、ONNX parser 和示例,核心库来自 NVIDIA 官方发布的 GA 压缩包,按 CUDA 13.3 或 12.9 二选一下载即可。

安装实战:从获取代码到跑通

路线一:只装 Python 包,五分钟上手

只跑推理、不编译 C++ 插件的话,一条命令就够:

pip install tensorrt # 官方预编译 Python 包

装完import tensorrt能打印出版本号,就算跑通了。下面的路线二只在你要编译插件或示例时才需要。

路线二:克隆仓库,代码和子模块一次拉全

git clone https://gitcode.com/GitHub_Trending/tens/TensorRT TensorRT && git submodule update --init --recursive

子模块会带上 protobuf 等依赖,这一步跳过是后面"找不到第三方库"类报错的常见原因。

环境变量这样配:指向 GA 包的 lib 目录

把 GA 包解压后,把TRT_LIBPATH指到里面的lib子目录(注意是 lib 目录本身,不是解压出的根目录):

export TRT_LIBPATH=~/TensorRT-11.1.0.106/lib # 11.1.0.106 为当前版本,路径按你的解压位置调整

cmake + make 两条命令完成编译

在仓库根目录建一个build目录并进入它,然后:

cmake .. -DTRT_LIB_DIR=$TRT_LIBPATH -DTRT_OUT_DIR=$(pwd)/out make -j$(nproc)

TRT_LIB_DIR告诉构建系统核心库在哪,TRT_OUT_DIR指定产物(可执行文件和库)输出到哪。CUDA 版本默认 13.3,要用 12.9 就在 cmake 行尾追加-DCUDA_VERSION=12.9

验证与排错 🔍

编译结束后,out/里会有一堆产物,用官方命令行工具 trtexec 验证最直接:

./out/trtexec --version # 能打印 TensorRT 版本号即成功

走路线一的用户,可以用python -c "import tensorrt"做同样的检查。

常见报错与对策:

  1. cmake 阶段报 CUDA 找不到 / 版本冲突:检查nvidia-smi右侧显示的 CUDA 版本与-DCUDA_VERSION是否一致,不一致时显式指定-DCUDA_VERSION=12.9(或 13.3)。
  2. 链接阶段报找不到libnvinfer相关符号:九成是TRT_LIBPATH指错了——它必须指向 GA 包里的lib目录,而不是解压根目录。
  3. pip 装 Python 包后import失败:先确认 Python 在 3.10–3.14 区间;再确认本机 CUDA 与 wheel 对应版本一致,否则换匹配的 wheel 或走源码路线。

底层原理速览:它凭什么更快

TensorRT 的提速不靠玄学,主要是四件事叠加:

  1. 层融合:把 Conv、BN、ReLU 这类相邻小操作合并成一个 GPU 内核,减少内核启动和显存往返开销。
  2. 低精度计算:支持 FP16、BF16 和 INT8。INT8 需要校准数据集(用真实数据统计激活范围),换来的是吞吐再翻一截。
  3. 内核自动调优:构建引擎时,它会在你的 GPU 上实测候选内核并挑最快组合,结果可存成 timing cache 复用。
  4. 动态张量内存:中间激活的显存复用调度,降低峰值占用,让大模型塞得进卡。

上游模型怎么进来?看这张图就很清楚:

四条主路径是ONNX 解析(仓库自带 parsers/onnx/ 解析器)、Torch-TensorRT(PyTorch 原生对接)、Hugging Face / Optimum,以及直接写图的Network Definition API(C++/Python 均可)。逐条路径的导入示例见 documents/import_workflows.md,各模型类别的支持矩阵见 documents/supported_models.md。

下一步:快速上手路线

  • 转一个自己的模型:PyTorch 模型先torch.onnx.export成 ONNX,导入前用 tools/Polygraphy/ 看一眼计算图,确认算子都在支持列表里。

  • 跑一个完整示例:编译产物里就有 sampleOnnxMNIST(C++ 建引擎 + 推理全流程)和 trtexec(命令行压测),各读一遍 README 照着敲即可。
  • 调精度:先用 FP16 验证精度无回退,再上 INT8 校准,用 trtexec 对比不同精度下的延迟和吞吐。

想跟进能力演进,可以看 CHANGELOG.md 和 documents/tensorrt_roadmap_2026q3.pdf;入门练习则从 quickstart/ 的 Notebook 开始最平滑。

【免费下载链接】TensorRTNVIDIA® TensorRT™ is an SDK for high-performance deep learning inference on NVIDIA GPUs. This repository contains the open source components of TensorRT.项目地址: https://gitcode.com/GitHub_Trending/tens/TensorRT

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询