第01章
显存溢出初探
什么是显存溢出(OOM)· 典型表现 · 常见原因概览
入门概念
第02章
硬件与驱动排查
GPU型号/显存确认 · 驱动版本 · CUDA/cuDNN兼容 · nvidia-smi详解
硬件驱动
第03章
PyTorch显存管理机制
分配策略 · 缓存分配器 · 碎片化 · torch.cuda系列API
PyTorch机制
第04章
TensorFlow显存管理机制
分配策略 · GPU内存增长 · 动态分配 · tf.config API
TensorFlow机制
第05章
模型加载与显存占用
参数量关系 · FP32/FP16/INT8 · 模型并行 · HuggingFace优化
模型加载
第06章
数据加载与显存泄漏
DataLoader泄漏 · pin_memory · num_workers · 预处理释放
数据泄漏
第07章
Batch Size与显存关系
Batch Size影响 · 梯度累积 · 动态调整 · AMP与Batch Size
Batch调优
第08章
梯度与优化器显存
梯度存储 · 优化器状态(SGD/Adam/AdamW) · 梯度检查点 · ZeRO
梯度优化器
第09章
中间激活值显存
前向激活存储 · 计算公式 · 优化策略 · 重计算技术
激活值优化
第10章
显存碎片化问题
产生原因 · 检测方法 · 解决方案 · PyTorch实战
碎片化排查
第11章
显存泄漏排查
定义与危害 · memory_profiler · pytorch_memlab · 修复方法
泄漏工具
第12章
nvidia-smi深度使用
参数详解 · 监控脚本 · Python集成 · 常见问题
监控nvidia
第13章
PyTorch显存监控
memory_summary · memory_stats · 显存快照 · 可视化工具
PyTorch监控
第14章
TensorFlow显存监控
get_memory_info · TensorBoard · 分析工具 · 日志记录
TensorFlow监控
第15章
梯度累积技术
原理 · 代码实现 · 与Batch Size关系 · 注意事项
梯度累积
第16章
梯度检查点技术
原理 · torch.utils.checkpoint · 策略选择 · 显存权衡
检查点节省
第17章
混合精度训练(AMP)
FP16/FP32原理 · 自动混合精度 · 显存节省 · 数值稳定性
AMP精度
第18章
模型并行与分布式训练
数据并行(DP/DDP) · 模型并行 · 流水线并行 · 张量并行
分布式并行
第19章
ZeRO优化器详解
Stage 1/2/3原理 · 显存节省 · DeepSpeed配置 · HuggingFace集成
ZeRODeepSpeed
第20章
显存交换技术
CPU Offloading原理 · 模型参数/优化器/激活值Offloading
交换Offload
第21章
显存压缩技术
量化 · 知识蒸馏 · 剪枝 · 低秩分解
压缩量化
第22章
常见框架显存优化
HuggingFace Transformers · Diffusers · LLaMA/LLM · ViT
框架优化
第23章
显存溢出错误日志分析
CUDA OOM解读 · RuntimeError分析 · 堆栈追踪 · 自动化分析
日志排错
第24章
实战案例1:BERT模型
显存溢出排查 · 优化方案 · 训练调优 · 推理优化
BERT实战
第25章
实战案例2:Stable Diffusion
显存溢出排查 · SD优化方案 · 训练调优 · 推理优化
SD扩散模型
第26章
实战案例3:LLaMA-7B
显存溢出排查 · LLaMA优化 · 微调调优 · 推理优化
LLaMA大模型
第27章
实战案例4:ResNet-50
显存溢出排查 · ResNet优化 · 训练调优 · 推理优化
ResNetCNN
第28章
显存溢出预防策略
代码规范 · 监控自动化 · 预警机制 · 自动化恢复
预防规范
第29章
显存溢出工具链
PyTorch Profiler · Nsight Systems · Nsight Compute · 工具对比
工具Profiler
第30章
显存溢出总结与进阶
最佳实践 · 未来趋势 · 学习资源 · 社区交流
总结进阶