01
显存复用概述
为什么需要显存复用?显存瓶颈与OOM问题。
入门核心
02
基础概念
张量生命周期、内存分配器、引用计数。
基础
03
静态内存复用
计算图分析、内存池化技术。
静态池化
04
动态内存复用
即时分配、碎片整理、缓存机制。
动态碎片
05
PyTorch缓存分配器
caching_allocator原理、stream语义、block管理。
PyTorch源码
06
CUDA Graph与内存复用
图捕获、重放、内存预分配。
CUDAGraph
07
梯度检查点
时间换空间、checkpoint实现原理、选择策略。
Checkpoint激活
08
混合精度训练
FP16/BF16存储节省、Master Weights管理。
AMPFP16
09
ZeRO优化器
ZeRO-1/2/3、参数分片、梯度分片、状态分片。
ZeRO分片
10
张量并行与流水线并行
Megatron-LM方案、1F1B调度、内存均衡。
并行Megatron
11
序列并行
Ring Attention、Flash Attention、内存复杂度分析。
Attention序列
12
激活值压缩
Activation Checkpointing、Offloading、量化激活。
压缩量化
13
显存卸载
CPU Offload、NVMe Offload、异步传输。
OffloadNVMe
14
显存碎片化
内部碎片、外部碎片、碎片整理算法。
碎片整理
15
显存池化技术
jemalloc/tcmalloc对比、自定义分配器。
池化分配器
16
显存复用与计算图优化
算子融合、死代码消除、内存别名分析。
图优化融合
17
显存复用与分布式训练
AllReduce内存优化、通信计算重叠。
分布式AllReduce
18
显存复用与推理优化
KV Cache复用、PagedAttention、Continuous Batching。
推理KV Cache
19
显存复用与模型压缩
剪枝、量化、蒸馏对显存的影响。
压缩剪枝
20
显存复用与稀疏计算
稀疏张量存储、2:4结构化稀疏。
稀疏结构化
21
显存复用与动态形状
动态batching、可变序列长度、内存预留策略。
动态形状
22
显存复用与异构计算
CPU-GPU统一内存、内存迁移策略。
异构统一内存
23
显存复用与虚拟内存
CUDA Unified Memory、内存超卖、page fault处理。
虚拟内存Unified
24
显存复用与多任务
多模型共存、优先级调度、内存隔离。
多任务隔离
25
显存复用与自动调优
AutoTuning、Profiling、Memory Advisor。
自动调优Profile
26
显存复用与调试
内存泄漏检测、OOM分析、可视化工具。
调试OOM
27
显存复用与框架对比
PyTorch vs TensorFlow vs JAX vs MindSpore。
框架对比
28
显存复用与硬件特性
NVLink、HBM带宽、显存带宽利用率。
硬件NVLink
29
显存复用与未来趋势
CXL互联、近存计算、存算一体。
未来CXL
30
综合实战
从零优化一个LLM训练任务的显存占用。
实战LLM