第01章
算子优化基础
什么是算子、算子优化的目标、计算与访存的基本概念。
核心概念入门
第02章
显存管理入门
显存层级结构、显存带宽与延迟、显存分配与释放。
显存基础
第03章
计算与访存平衡
Roofline模型介绍、计算密集型 vs 访存密集型、如何识别瓶颈。
Roofline瓶颈分析
第04章
算子融合技术
什么是算子融合、常见融合模式(Conv+BN, MatMul+Add)、融合带来的显存收益。
融合显存优化
第05章
内存复用策略
In-place操作、内存池化、显存碎片化处理。
复用池化
第06章
张量布局优化
NHWC vs NCHW、内存对齐、数据填充(Padding)。
布局对齐
第07章
循环分块(Tiling)
分块原理、分块大小选择、分块对缓存的影响。
Tiling缓存
第08章
向量化与SIMD
SIMD指令集介绍、自动向量化、手写向量化示例。
SIMD向量化
第09章
并行计算基础
OpenMP多线程、CUDA线程模型、任务并行与数据并行。
并行CUDA
第10章
CUDA算子优化
Kernel Launch配置、共享内存使用、Bank Conflict避免。
CUDA共享内存
第11章
显存带宽优化
连续内存访问、合并访问(Coalesced Access)、数据预取。
带宽合并访问
第12章
计算与通信重叠
异步传输、Stream与Event、流水线调度。
重叠异步
第13章
混合精度训练
FP16/FP32/BF16介绍、显存节省原理、Loss Scaling。
混合精度FP16
第14章
梯度累积与显存
梯度累积原理、显存占用分析、与Batch Size的关系。
梯度累积显存
第15章
激活值显存优化
Checkpointing(重计算)、激活值压缩、选择性保存。
重计算激活值
第16章
模型并行策略
张量并行、流水线并行、数据并行对比。
模型并行策略
第17章
ZeRO优化器
ZeRO Stage 1/2/3、显存分布、通信开销。
ZeRO显存优化
第18章
显存卸载(Offloading)
CPU Offloading、NVMe Offloading、动态卸载策略。
卸载Offload
第19章
FlashAttention原理
标准Attention显存问题、分块计算、IO感知优化。
AttentionFlash
第20章
稀疏计算与显存
稀疏矩阵存储格式、稀疏算子优化、显存节省分析。
稀疏显存
第21章
量化与显存
INT8/INT4量化、权重量化、激活量化对显存的影响。
量化INT8
第22章
动态形状优化
动态Batch、动态序列长度、显存预留策略。
动态形状预留
第23章
Profiling工具使用
Nsight Systems、PyTorch Profiler、显存快照分析。
ProfilingNsight
第24章
显存泄漏排查
常见泄漏场景、引用循环、Python对象生命周期。
泄漏调试
第25章
算子调度优化
算子执行顺序、拓扑排序、显存生命周期管理。
调度拓扑
第26章
编译优化技术
TVM/XLA介绍、图优化、算子自动调优。
编译TVM
第27章
显存压缩技术
梯度压缩、通信压缩、量化压缩。
压缩梯度
第28章
分布式训练显存
AllReduce显存开销、Ring AllReduce、通信域优化。
分布式AllReduce
第29章
端侧算子优化
移动端显存限制、NPU/GPU差异、模型裁剪。
端侧移动端
第30章
综合案例
大模型训练显存优化实战、从Profiling到优化的完整流程。
实战综合