RL Infra Series
导言
这个目录不是单篇文章,而是一条从 数据流 出发,逐步展开到 训练、推理、异步、checkpoint、性能优化和特性矩阵 的写作路线图。
系列目标¶
- 先统一语言:把 logical shape、physical shard shape、tensor lifetime、dynamic batch、sequence split 这些概念对齐。
- 再谈实现:先回答“数据怎么流、shape 怎么变、显存为什么涨、负载为什么不均”,再看具体代码。
- 最后落到特性:把 verl 的训练、推理、异步、checkpoint 和其余框架特性拆成可验证的独立文章。
文章地图¶
| 顺序 | 文章 | 核心问题 | 主要交付 |
|---|---|---|---|
| 1 | RL Data Flow |
RL 从推理输入到训练输出,数据如何流动 | shape ledger、memory ledger、DFX 设计、SP/CP 差异 |
| 2 | RL DFX Metrics |
如何设计维测指标解释正确性、性能、显存和负载 | 指标体系、告警规则、dashboard 草图 |
| 3 | VeRL Training Flow |
verl 的训练主链路如何组织 | RayPPOTrainer、worker 角色、loss 路径、后端差异 |
| 4 | VeRL Rollout Inference |
rollout / 推理服务化如何设计 | backend 对比、服务化流程、推理指标 |
| 5 | VeRL Async |
FullAsync 与 one-step offset 为什么能提效 | 异步队列、数据一致性、staleness 风险 |
| 6 | VeRL Checkpoint |
mooncake checkpoint 解决什么问题 | save / restore state、依赖、失败模式 |
| 7 | VeRL Performance Optimization |
各特性如何影响 MFU / SMA | 性能模型、瓶颈拆解、对外解释模板 |
| 8 | VeRL Feature Matrix |
每个特性如何开关、代码在哪、默认为何关闭 | feature matrix、验证状态、风险清单 |
写作原则¶
- 先主线,后分支:第一篇只解决全局数据流与 shape 视角,不先陷入每个特性的细节。
- 先事实,后推断:所有没有代码或实验验证的内容统一标成 待验证。
- 先可解释,后优化:没有可解释的 DFX 指标,后面很难说明 OOM、load imbalance 和 MFU / SMA 波动。
- 先统一口径,后给结论:所有形状、显存、吞吐和利用率都先统一定义,再讨论好坏。
当前已知与待补充¶
未验证项
下面这些内容在后续写作中必须回到 verl release/v0.7.1 代码和实际日志确认,不能直接写成结论:
TQ的准确含义、开关方式与代码位置。mooncake checkpoint的保存 / 恢复语义、依赖与约束。FullAsync、full async one-step offset的差异、数据错位方式和一致性要求。- 推理服务化的实际部署形态、隔离方式与权重同步方式。
- 其余内部 vLLM 特性的名字、环境变量、路径与收益。
- SP / CP 在不同后端上的真实实现差异。
现有素材¶
VeRL.md:现有的 VeRL 混合笔记,后续可拆解进训练、指标或性能文章。VeRL_fast_debug.md:现有的调试素材,后续可并入性能优化或可观测性章节。- 参考优化文档:
verlrelease/v0.7.1 的 GSPO 优化实践文档。
使用方式¶
- 先补完第一篇
RL Data Flow。 - 再写训练、推理、异步、checkpoint 四篇主线文章。
- 最后补
Performance Optimization与Feature Matrix,把“怎么开、为什么默认关、对 MFU / SMA 的影响”收口成表格。