芯片级AI算子加速库开发实战
📚 共计 30 章节
01
AI芯片与算子加速库概述
AI芯片发展简史 · 架构分类 · 加速库定位 · 课程路线图
GPU/TPU/NPU
价值
02
硬件基础与计算原语
MAC/PE · 数据流架构 · 存储层次 · 片上互联总线
脉动阵列
L1/L2
03
算子分类与计算特征
Conv/GEMM/Softmax · 计算/访存密集 · 算子融合
LayerNorm
融合
04
开发环境搭建
交叉编译 · RISC-V/ARM模拟器 · perf/gprof · Hello World
工具链
模拟器
05
C/C++基础与优化技巧
指针与内存 · 缓存友好 · 循环展开 · 内联汇编
软件流水线
数据结构
06
向量化编程基础
SIMD概览(NEON/SVE/RVV) · 向量类型 · 加载/存储 · 算术运算
向量化
SIMD
07
矩阵乘法优化(上)
朴素GEMM · 分块Tiling · 内存布局 NCHW vs NHWC
分块
布局
08
矩阵乘法优化(下)
寄存器分块 · 向量化GEMM · 微内核 · Pack操作
Micro-kernel
Pack
09
卷积算子优化(上)
Im2Col+GEMM · Winograd原理 · 直接卷积实现
Winograd
Im2Col
10
卷积算子优化(下)
内存带宽 · 算子融合(Conv+BN+ReLU) · Winograd部署
融合
NPU
11
池化与激活算子
MaxPool/AvgPool · ReLU系列 · 近似计算 GELU/Swish
激活
近似
12
归一化算子
BatchNorm融合 · LayerNorm优化 · RMSNorm实现
归一化
融合
13
Softmax与Attention算子
Safe Softmax · Flash Attention原理 · Online Softmax
Attention
Flash
14
Embedding与Gather算子
Embedding Lookup · 稀疏存储 · Gather/Scatter
稀疏
Gather
15
逐元素算子与Broadcast
Element-wise向量化 · Broadcast机制 · FMA
广播
FMA
16
算子调度与任务分配
多核并行(OpenMP/pthread) · 任务队列 · 负载均衡
并行
调度
17
内存管理与数据搬运
DMA优化 · Double Buffering · 预取Prefetch
DMA
双缓冲
18
量化算子(上)
INT8量化 · 对称/非对称 · 量化参数校准
INT8
校准
19
量化算子(下)
量化卷积/GEMM · 量化Softmax · 部署避坑
量化部署
坑
20
稀疏算子加速
结构化稀疏 · 稀疏矩阵乘法 · 剪枝后优化
稀疏
剪枝
21
算子融合与图优化
计算图优化 · 融合Pass · 内存复用分析
图优化
内存复用
22
自动调优(Auto-tuning)
搜索空间 · 代价模型 · 遗传/贝叶斯优化
Auto-tuning
Cost Model
23
性能Profiling与调优
硬件计数器 · Roofline模型 · 瓶颈定位
Profiling
Roofline
24
单元测试与验证
数值对比 · 性能回归 · 随机测试生成
测试
验证
25
Python绑定与API设计
pybind11 · Python封装 · Tensor接口设计
pybind11
API
26
算子库集成与部署
ONNX Runtime · TensorRT插件 · TFLite Delegate
ONNX
TensorRT
27
案例实战:ResNet50算子加速
逐层分析 · 算子融合 · 端到端调优
ResNet50
实战
28
案例实战:Transformer算子加速
Multi-Head Attention · FFN融合 · KV Cache优化
Transformer
KV Cache
29
前沿趋势
存算一体 · 光计算 · 可重构 · Chiplet
存算一体
Chiplet
30
课程总结与项目实战
综合项目 · 性能报告 · 面试与职业发展
总结
项目