01
算子优化概述
什么是算子 · AI框架角色 · 优化目标:计算加速、内存、带宽
核心概念入门
02
硬件基础与性能模型
GPU/CPU架构 · SM/Warp · Roofline模型
GPUCPU性能分析
03
CUDA编程基础回顾
Kernel Launch · 线程映射 · 共享内存 · 原子操作
CUDA并行
04
CUDA性能分析工具
Nsight Systems/Compute · Occupancy · 吞吐量
ProfilingNsight
05
算子优化方法论
识别瓶颈 · 访存/计算/并行策略 · 迭代流程
方法论优化流程
06
访存优化(一)
合并访问 · Bank Conflict · Shared Memory技巧
访存Shared Memory
07
访存优化(二)
Tiling · Prefetching · Vectorized Load/Store
数据复用向量化
08
计算优化(一)
ILP/TLP/Warp级并行 · 减少分支发散
指令并行Warp
09
计算优化(二)
Intrinsics · 快速数学函数 · 精度权衡
内建函数精度
10
并行度优化
Occupancy调优 · Block/Grid选择 · Launch Bounds
Occupancy线程配置
11
算子融合 (Kernel Fusion)
Element-wise/Reduce融合 · 策略与约束
融合带宽优化
12
内存布局优化
NHWC vs NCHW · Tiled Layout · AoS vs SoA
布局Padding
13
Reduction算子优化
Warp Shuffle · Shared Memory · 原子优化
规约Shuffle
14
Scan算子优化
Hillis-Steele · Blelloch · Warp/Block Scan
前缀和并行算法
15
MatMul算子优化(一)
Naive · Tiling · Shared/Register分块
矩阵乘法Tiling
16
MatMul算子优化(二)
WMMA · Tensor Core · cuBLAS对比
Tensor CoreWMMA
17
Convolution优化(一)
Im2Col+GEMM · Winograd · Direct Conv
卷积Im2Col
18
Convolution优化(二)
CHWN/NHWC · Fused Conv+BN · Depthwise
布局融合
19
Attention算子优化
FlashAttention · Online Softmax · Tiling
AttentionMemory-bound
20
LayerNorm与Softmax优化
Online Normalization · Warp Softmax · Fused
归一化Softmax
21
Activation算子优化
ReLU/GELU/SwiGLU Fused · In-place · 精度
激活函数融合
22
Element-wise算子优化
Vectorized · Loop Unrolling · 多操作融合
逐元素向量化
23
Gather/Scatter算子优化
Bank Conflict · Shared转置 · Coalesced Scatter
GatherScatter
24
TopK与Sort算子优化
Radix/Bitonic Sort · Warp TopK
排序TopK
25
Sparse算子优化
CSR/COO/ELL · Sparse MatMul · Sparse Attention
稀疏存储格式
26
量化算子优化
INT8/FP8 · 量化/反量化 · Fake Quant
量化INT8
27
算子自动调优 (Auto-tuning)
TVM Ansor · Triton · JIT编译
自动调优Triton
28
算子测试与验证
Allclose/ULP · Benchmark框架 · Regression
测试精度验证
29
算子部署与集成
ONNX Runtime · TensorRT Plugin · PyTorch C++
部署集成
30
综合实战:LayerNorm优化
从零分析→实现→调优→验证→部署 · 课程总结
实战LayerNorm结课