VIP8
本课程属于:030-GPU显存管理与碎片治理 AI智能与边缘计算工程 · 共 8 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

算子优化:降低显存碎片实战课程

📚 共计 30 章节
第1章
显存碎片问题概述
什么是显存碎片、碎片产生的根本原因(分配与释放不匹配)、碎片对训练推理性能的影响。
基础概念
第2章
CUDA内存管理基础
cudaMalloc/cudaFree机制、CUDA虚拟内存与物理内存、页表与映射。
CUDA底层
第3章
内存池化技术原理
预分配大块内存、内部管理空闲块、减少系统调用。
池化性能
第4章
Buddy内存分配算法
算法原理、伙伴系统的工作流程、在显存管理中的应用。
算法经典
第5章
Slab分配器
针对固定大小对象的优化、缓存热度的利用、减少内部碎片。
内核对象
第6章
tcmalloc与jemalloc对比
两种通用分配器的设计哲学、在GPU场景下的适配性。
分配器对比
第7章
PyTorch缓存分配器源码分析
CachingAllocator的工作流程、Stream与Block的管理。
PyTorch源码
第8章
显存碎片度量指标
碎片率计算公式、最大空闲块占比、分配成功率。
度量指标
第9章
碎片可视化工具
使用Nsight Systems分析内存轨迹、自定义dump工具。
工具可视化
第10章
算子融合对碎片的影响
融合减少中间张量、降低分配频率。
融合优化
第11章
张量生命周期管理
提前释放、引用计数优化、显存复用策略。
生命周期复用
第12章
动态形状与碎片
变长序列带来的挑战、动态batching的碎片问题。
动态挑战
第13章
显存整理(Defragmentation)
移动数据、重映射地址、整理时机选择。
整理高级
第14章
分页注意力机制(PagedAttention)
vLLM的核心思想、KV Cache的分页管理。
LLMvLLM
第15章
FlashAttention的内存优化
分块计算、重计算、减少显存占用。
Attention高效
第16章
ZeRO系列优化器
ZeRO-1/2/3的显存分布策略、碎片缓解效果。
ZeRO分布式
第17章
TensorFlow的BFC分配器
BFC算法原理、Chunk与Bin的管理。
TensorFlowBFC
第18章
自定义分配器实战
基于cudaMemPool的分配器、实现线程安全。
实战cudaMemPool
第19章
显存预留与预热
模型加载时的预分配、减少运行时碎片。
预热策略
第20章
碎片模拟器构建
模拟分配释放序列、评估不同策略。
模拟评估
第21章
多流场景下的碎片
不同Stream的同步与隔离、Stream优先级。
多流并发
第22章
异步分配与释放
CUDA Stream与回调、避免同步开销。
异步回调
第23章
显存泄漏检测
工具与方法、常见泄漏模式。
调试泄漏
第24章
大模型训练中的碎片案例
Megatron-LM、DeepSpeed的实际问题。
大模型案例
第25章
推理服务中的碎片优化
Triton Inference Server、动态批处理。
推理服务
第26章
碎片与显存超卖
虚拟显存、swap机制、性能权衡。
超卖虚拟
第27章
硬件特性利用
显存带宽、HBM结构、NUMA亲和性。
硬件HBM
第28章
未来趋势
统一内存、CXL互连、可组合显存。
前沿趋势
第29章
综合案例:从零优化一个算子的显存碎片
端到端优化实践,分析、策略、实现与验证。
综合实战
第30章
课程总结与最佳实践
设计模式、监控体系、持续优化。
总结最佳实践