🚀 嵌入式推理加速
30章 · 从入门到实战
🎯 友好色系
01
绪论
为什么嵌入式设备需要推理加速?摩尔定律放缓与边缘计算崛起,课程目标与学习路径。
02
硬件基础
ARM Cortex-A系列与NPU架构解析,Cache层级与内存带宽对推理的影响。
03
模型轻量化 (上)
知识蒸馏的原理与实战,如何训练一个“小老师”模型。
04
模型轻量化 (下)
结构化剪枝与非结构化剪枝,我在项目中用剪枝把模型缩小了4倍。
05
量化基础
FP32到INT8的转换原理,对称量化与非对称量化的选择。
06
量化进阶
训练后量化(PTQ)与量化感知训练(QAT),校准数据集的重要性。
07
算子优化
卷积算子的Winograd与FFT加速,Im2Col+GEMM的经典套路。
08
内存优化
内存池管理与数据排布(NCHW vs NHWC),减少Cache Miss的实战技巧。
09
编译优化
TVM与XLA的图优化策略,算子融合与常量折叠。
10
推理框架 (上)
TensorRT的部署流程与动态shape处理,我踩过的TRT版本坑。
11
推理框架 (下)
ONNX Runtime与TFLite的选型对比,移动端部署的注意事项。
12
异构计算
CPU+GPU+NPU的协同调度,OpenCL与Vulkan的基础用法。
13
模型转换与精度对齐
从PyTorch到ONNX的坑,精度调试的“三板斧”。
14
端侧部署实战 (上)
使用NCNN在Android手机上部署YOLOv5。
15
端侧部署实战 (下)
使用TensorFlow Lite在iOS上部署MobileNet。
16
性能分析工具
使用Perfetto与Arm MAP进行Profiling,找到瓶颈点。
17
Batch推理与动态Batching
提高吞吐量的关键,服务端与边缘端的差异。
18
流水线并行与多线程
Pipeline模式提高硬件利用率,线程池的正确打开方式。
19
稀疏化计算
利用硬件稀疏加速单元,CSR与CSC格式的转换。
20
低精度训练
BF16与FP16的训练技巧,混合精度训练的硬件要求。
21
模型结构搜索 (NAS)
轻量级网络的设计哲学(MobileNet, ShuffleNet, EfficientNet)。
22
注意力机制加速
Flash Attention的原理,减少显存占用的技巧。
23
Transformer在端侧的部署
量化LLM的挑战,KV Cache的优化。
24
实时性保障
RTOS与时间片调度,硬实时与软实时的取舍。
25
功耗优化
DVFS与动态电压频率调整,算力与功耗的平衡艺术。
26
安全与可信推理
TEE与安全岛,模型加密与防篡改。
27
多模型级联
Pipeline模型的联合优化,特征图复用技术。
28
自动化调优
AutoTVM与Ansor的自动搜索,我的一次调优经历。
29
前沿技术
存内计算与光子计算的展望,未来嵌入式AI的趋势。
30
综合实战
从零搭建一个智能摄像头推理系统,完整流程回顾与总结。