🚀 TensorRT 性能实战
30章 · 从入门到精通
🎯 瓶颈定位 · 优化加速
01
TensorRT 概述
什么是TensorRT · AI部署角色 · 核心优势与适用场景
02
环境搭建
CUDA/cuDNN版本选择 · deb/tar/rpm安装 · 验证安装
03
模型转换基础
ONNX中间表示 · PyTorch导出陷阱 · trtexec快速转换
04
TensorRT API入门
Builder/Network · 配置工作空间/精度 · 构建Engine
05
推理引擎加载与运行
反序列化Engine · ExecutionContext · 同步/异步推理
06
性能分析工具链概览
trtexec详解 · Nsight Systems · DLProf/TensorBoard
07
trtexec深度使用
性能基准测试 · JSON/CSV报告 · 自定义形状与批处理
08
Nsight Systems性能分析
时间轴解读 · GPU空闲/CPU瓶颈 · 自定义标记范围
09
Layer级性能分析
Profiling API · 逐层耗时统计 · 识别低效算子
10
内存带宽瓶颈分析
显存带宽利用率 · 数据搬运与计算重叠 · nvidia-smi
11
计算核心利用率分析
SM占用率/Tensor Core · Nsight Compute · 算术强度
12
IO瓶颈定位
Host-Device传输开销 · 异步流优化 · CUDA Events测量
13
算子融合与图优化
自动融合策略 · 手动验证融合 · 融合失败排查
14
精度分析与校准
FP32/FP16/INT8对比 · 校准集准备 · INT8量化校准
15
动态形状优化
动态形状影响 · 优化范围与配置文件 · 显存管理
16
多流并发推理
创建CUDA Stream · 同步与隔离 · 性能收益评估
17
批处理优化
动态/静态批处理 · 最优批大小搜索 · 延迟与吞吐量
18
插件开发与性能
自定义Layer场景 · Plugin接口 · 性能自检与优化
19
TensorRT与TensorFlow集成
TF-TRT工作流 · 性能分析 · 局限性
20
TensorRT与PyTorch集成
torch-tensorrt工作流 · JIT/AOT编译 · 性能验证
21
端到端性能基准测试
基准测试方案 · 延迟/吞吐量指标 · 统计显著性检验
22
常见性能陷阱与反模式
过度动态形状 · Host-Device同步开销 · 不合理融合
23
显存优化策略
显存池与复用 · 减少临时张量 · InferenceRequest预分配
24
延迟优化技巧
减少Kernel Launch · CUDA Graph · CPU预处理流水线
25
吞吐量优化技巧
增大批处理 · 并发推理 · 优化数据加载器
26
多GPU推理策略
单进程多卡/多进程单卡 · NCCL通信 · 负载均衡
27
边缘设备部署优化
Jetson特性 · DLA加速器 · 功耗与性能平衡
28
性能回归测试
自动化测试框架 · 性能基线管理 · 告警与可视化
29
案例实战1:ResNet-50
图像分类模型性能分析与优化全流程
30
案例实战2:YOLOv8
目标检测模型性能分析与优化全流程