🧩 推理引擎·算子融合
与图优化实战
📘 30章 从入门到综合实战
⚡ TensorRT
⚡ ONNX Runtime
⚡ OpenVINO
⚡ TVM
⚡ XLA
📚
01
推理引擎概述
什么是推理引擎 · 与训练框架区别 · TensorRT/ONNX Runtime/OpenVINO
02
计算图基础
计算图概念 · 静态图vs动态图 · IR表示 · 图数据结构
03
图优化入门
为什么需要图优化 · 目标(加速/省显存) · 基本流程
04
算子融合原理
核心思想 · 收益(减少访存/启动开销) · 挑战
05
常见融合模式 (一)
Conv+BatchNorm · Conv+ReLU · Conv+Bias+ReLU
06
常见融合模式 (二)
Add+ReLU · MatMul+Add · LayerNorm融合
07
融合的数学等价性
线性变换融合条件 · 非线性限制 · 精度与混合精度
08
常量折叠
原理 · 编译期计算 · 触发条件与实现
09
死代码消除
死节点/死边 · 可达性分析 · 消除策略
10
表达式化简
代数化简 · 恒等变换 · 冗余消除
11
内存优化
内存复用 · in-place操作 · 对齐与合并访问
12
布局变换
NCHW ↔ NHWC · 数据排布影响 · 自动布局优化
13
子图替换技术
模式匹配与替换 · 基于规则/代价的替换
14
算子调度与执行顺序优化
拓扑排序 · 并行度分析 · 流水线调度
15
显存优化策略
显存池化/复用 · 梯度检查点 · 重计算
16
量化与图优化
QAT/PTQ · 量化算子融合 · 量化图优化
17
动态形状处理
动态形状挑战 · dynamic batching · 形状推理
18
多后端支持与异构计算
CPU/GPU/NPU算子选择 · 异构图切分 · 设备传输优化
19
TensorRT图优化实践
优化流程 · 层融合 · 动态形状与INT8量化
20
ONNX Runtime图优化实践
优化Pass · 图变换API · 自定义优化器
21
OpenVINO图优化实践
模型优化器 · 中间表示 · 硬件适配优化
22
TVM与Relay图优化
Relay IR · 图优化Pass · AutoTVM/AutoScheduler
23
XLA与JIT编译优化
编译流程 · HLO与优化Pass · JIT优缺点
24
图优化Pass的编写 (一)
Pass注册/执行 · 依赖关系 · 调试
25
图优化Pass的编写 (二)
自定义融合/常量折叠Pass · 测试与验证
26
图优化性能分析工具
Nsight · VTune · 瓶颈分析 · 优化评估
27
大规模模型的图优化
模型并行与图切分 · 流水线并行 · 张量并行
28
图优化的安全性与正确性
数值稳定性 · 等价性验证 · 回归测试
29
前沿趋势
编译器与推理引擎融合 · 端侧优化 · 自动搜索
30
综合实战
PyTorch → 优化推理引擎部署 · 端到端流程 · 调优案例