01
显存优化入门
什么是VRAM · 显存爆炸原因 · 核心思想 · 学习路径
基础概览
02
PyTorch显存机制
Tensor存储 · CUDA缓存分配器 · 碎片化 · torch.cuda API
PyTorch底层
03
混合精度训练 (AMP)
FP16/FP32 · 自动混合精度 · GradScaler · 收益与陷阱
精度加速
04
梯度检查点
时间换空间 · checkpoint函数 · 适用场景 · 开销分析
内存技巧
05
梯度累积
模拟大Batch · accumulation_steps · BN兼容性
Batch稳定
06
显存分析与监控
nvidia-smi · memory_summary · snapshot · 泄漏定位
调试工具
07
模型并行
单机多卡切分 · DataParallel vs DDP · 张量并行
分布式并行
08
流水线并行
GPipe/TorchPipe · 微批次设计 · 负载均衡
流水线吞吐
09
张量卸载
CPU Offload · ZeRO-Offload · NVMe · 部署案例
卸载大模型
10
ZeRO优化器 (DeepSpeed)
Stage 1/2/3 · 参数/梯度分片 · HuggingFace集成
DeepSpeedZeRO
11
激活值压缩
激活值显存占用 · Dropout/ReLU/量化 · 动态释放
压缩激活
12
显存复用与In-place
inplace=True风险 · torch.no_grad() · del与empty_cache
技巧安全
13
数据加载优化
num_workers · pin_memory · prefetch_factor · 避免瓶颈
DataLoaderIO
14
Batch Size与显存
线性/非线性因素 · 二分法找最大Batch · 动态策略
Batch调优
15
模型剪枝
结构化/非结构化 · torch.prune · 显存影响
剪枝稀疏
16
模型量化
INT8 · 动态/静态量化 · QAT · 部署显存节省
量化INT8
17
知识蒸馏
教师-学生 · 软标签/温度 · 显存需求降低
蒸馏压缩
18
Flash Attention
标准Attention瓶颈 · Tiling/Recomputation · 加速效果
Attention加速
19
PagedAttention与vLLM
KV Cache管理 · PagedAttention · vLLM调度
vLLM推理
20
连续批处理
动态Batch vs 静态 · Inflight Batching · 吞吐/显存平衡
批处理动态
21
LoRA与QLoRA微调
低秩适配 · 显存优势 · 4-bit QLoRA · 实战配置
LoRA微调
22
AdaLoRA与DoRA
自适应秩分配 · 权重分解 · 显存对比
高级适配
23
CPU与GPU混合推理
模型部分驻留CPU · 按需加载 · 延迟/显存权衡
混合推理
24
显存池化与共享 (MPS/MIG)
MPS服务 · MIG分区 · 多任务隔离共享
MIG池化
25
JIT编译与算子融合
TorchScript/TorchDynamo · 算子融合 · Inductor后端
编译融合
26
显存泄漏排查实战
循环增长 · 钩子泄漏 · DataLoader泄漏 · 修复案例
调试泄漏
27
大模型推理优化
KV Cache · Speculative Decoding · Medusa · 联合优化
推理LLM
28
多模态模型显存优化
视觉编码器优化 · 跨模态注意力压缩 · 特征缓存
多模态视觉
29
分布式训练显存优化
FSDP vs ZeRO · 通信/显存权衡 · 混合并行
分布式FSDP
30
综合实战:16GB→70B
案例拆解 · 工具链整合 · 调优全流程 · 未来趋势
实战终极