📘 ONNX · TensorRT 实战
风格 · 30章
⚡ 集成课程
v1.0
01
ONNX与TensorRT概述
什么是ONNX?什么是TensorRT?为什么需要模型部署优化?课程目标与前置知识。
02
环境搭建
安装CUDA、cuDNN、TensorRT、ONNX Runtime、PyTorch,验证安装。
03
PyTorch模型导出为ONNX
torch.onnx.export详解,动态轴与静态轴设置,opset版本选择。
04
ONNX模型结构解析
使用Netron可视化ONNX图,理解节点、张量、输入输出,调试常见问题。
05
ONNX模型验证与调试
使用onnxruntime推理验证精度,检查算子兼容性,处理导出警告。
06
ONNX算子兼容性分析
常见不兼容算子(Resize、NonMaxSuppression),手动替换与规避策略。
07
ONNX模型简化与优化
使用onnx-simplifier简化模型,常量折叠,冗余节点删除。
08
ONNX模型量化基础
FP32与FP16转换,动态量化与静态量化,精度损失评估。
09
TensorRT基础概念
Builder、Network、Engine、Context、Binding,理解编译流程。
10
TensorRT安装与配置
源码编译/Deb包安装,trtexec工具使用,环境变量设置。
11
使用trtexec转换ONNX模型
命令行参数详解(--fp16、--int8、--workspace),性能测试。
12
TensorRT Python API入门
创建Builder与Network,从ONNX解析器构建网络。
13
TensorRT C++ API入门
C++环境配置,构建Engine,序列化与反序列化。
14
Engine序列化与反序列化
保存为.engine文件,加载Engine推理,性能对比。
15
TensorRT动态形状支持
优化Profile设置,动态输入尺寸处理,多Profile配置。
16
TensorRT INT8量化实战
校准数据集准备,校准器(Int8Calibrator)实现,精度调优。
17
TensorRT插件开发
自定义算子插件(IPluginV2),注册与使用,性能测试。
18
TensorRT多流推理
多Context并行推理,Stream管理,吞吐量优化。
19
TensorRT与ONNX Runtime集成
使用ONNX Runtime的TensorRT执行提供者,配置与调优。
20
TensorRT与DeepStream集成
在DeepStream中使用TensorRT进行视频分析,Pipeline搭建。
21
TensorRT与Triton推理服务器集成
模型仓库配置,动态批处理,并发模型加载。
22
TensorRT性能分析工具
NVIDIA Nsight Systems分析推理瓶颈,Profiling API使用。
23
TensorRT内存优化
显存池管理,张量复用,减少内存碎片。
24
TensorRT常见错误与调试
内存越界、形状不匹配、精度异常,日志分析与解决。
25
ONNX-TensorRT混合精度训练
AMP与TensorRT结合,训练后量化(PTQ)与量化感知训练(QAT)。
26
ONNX模型部署到边缘设备
Jetson平台TensorRT优化,功耗与性能平衡。
27
ONNX模型部署到云端
A100/H100 GPU优化,多实例GPU(MIG)配置。
28
ONNX模型安全与版本管理
模型加密,版本回滚,A/B测试策略。
29
实战项目一:图像分类 (ResNet50)
从PyTorch到TensorRT部署,完整流程。
30
实战项目二:目标检测 (YOLOv8)
从ONNX到TensorRT优化与部署,端到端。