01
Batch队列基础
什么是Batch队列 · 为什么需要Batch队列 · Batch队列与显存的关系
入门核心概念
02
显存管理基础
GPU显存架构 · 显存分配与释放机制 · 显存碎片化问题
显存底层
03
Batch Size的选择艺术
Batch Size对训练速度/收敛的影响 · 显存占用与Batch Size的数学关系
调参数学
04
动态Batch队列
固定Batch vs 动态Batch · 实现原理 · 适用场景
进阶动态
05
显存预分配策略
显存池技术 · 预分配与按需分配权衡 · PyTorch显存缓存机制
性能缓存
06
梯度累积与Batch队列
梯度累积原理 · 变相增大Batch · 显存优势
梯度技巧
07
数据加载优化
DataLoader的num_workers · prefetch_factor · 流水线设计
IO加速
08
混合精度训练
FP16与FP32显存差异 · AMP原理 · Batch队列调整
精度AMP
09
显存监控与诊断
nvidia-smi实战 · PyTorch监控工具 · 显存泄漏排查
调试工具
10
Batch队列的异步处理
异步队列设计 · 生产者-消费者 · 线程安全
并发异步
11
显存碎片整理
碎片产生原因 · 整理策略 · empty_cache机制
显存优化
12
多GPU下的Batch队列
数据并行与Batch分配 · DistributedSampler · 多卡显存均衡
分布式多卡
13
Batch队列的优先级调度
优先级队列设计 · 样本难易程度 · 课程学习
调度策略
14
显存交换技术
CPU Offloading · NVLink与PCIe · 交换时机选择
交换高级
15
梯度检查点
Checkpointing原理 · 时间换空间 · 与Batch队列结合
检查点显存
16
Batch队列的序列化
序列化与反序列化 · 队列持久化 · 断点续训恢复
持久化容错
17
显存压缩技术
梯度压缩 · 激活值压缩 · 对Batch队列的影响
压缩通信
18
Batch队列的负载均衡
动态负载均衡算法 · 任务窃取 · 负载不均的显存影响
均衡调度
19
显存预留策略
系统显存预留 · CUDA Context开销 · 预留大小经验公式
预留安全
20
Batch队列的异常处理
OOM异常捕获 · 自动降级策略 · 优雅回退机制
异常鲁棒
21
显存复用技术
Tensor复用 · 内存池设计 · 生命周期管理
复用内存池
22
Batch队列的分布式协调
全局队列 vs 本地队列 · 参数服务器 · 一致性保证
分布式协调
23
显存带宽优化
内存访问模式 · 合并访问与Bank Conflict · 布局优化
带宽底层
24
Batch队列的持久化存储
队列到磁盘换入换出 · SSD与HDD · 持久化对显存的释放
存储IO
25
显存与Batch队列的联合调优
调优方法论 · 性能剖析工具 · 调优案例实战
调优综合
26
Batch队列的流处理
CUDA Stream与队列 · Stream依赖管理 · 多Stream显存共享
CUDA流
27
显存安全边界
显存溢出保护 · 安全余量设置 · OOM自动恢复机制
安全容错
28
Batch队列的测试与基准
队列性能基准测试 · 显存压力测试 · 稳定性测试方法
测试基准
29
Batch队列在推理场景的应用
推理Batch队列 · 动态Batching · 推理显存优化
推理部署
30
综合实战:从零构建协同优化系统
Batch队列与显存协同优化系统 · 完整实战
项目综合