NeMo MBridge MoE 通信重叠调优
优化 Megatron Bridge 中 MoE 专家并行通信与计算重叠。
技能范围限于配置建议和性能命令,明确要求先验证前置条件,并提示不要在日志中泄露秘密;未见恶意行为或过度权限。但缺少明确的用户确认、回滚步骤、依赖版本锁定和数据流说明,因此扣分。
说明了 EP、dispatcher、精度、PP/VPP、重计算和 CUDA Graph 约束,并提供异常启动验证方式。可是静态材料未包含该技能专属的可执行测试或完整失败诊断,依赖和运行环境也未锁定,因此仅给有限分数。
触发词、适用场景、前置条件和非适用情况较清晰,且不依赖海外在线服务。未说明中文使用方式、更多硬件/版本边界、回归排查范围和不支持的模型配置,因此扣分。
SKILL.md 结构清楚,包含快速决策、启用方式、前置条件、陷阱和验证;许可证、所有者、版本和更新线索可从附属材料及仓库上下文获得。缺少推荐的 Instructions 和 Examples 章节,作者、变更记录、稳定参数策略和维护责任仍不充分,因此扣分。
核心任务可直接得到配置项、约束、命令和方向性基准数字,且明确说明收益依赖 workload。只有一个正向评测任务,短跑结果非 release-grade,缺少代表性输出和与替代方案的比较,因此按静态上限保守给分。
提供代码锚点、测试路径、评测报告和明确的短跑数据,并区分方向性证据与结论。材料未包含被审查源文件内容、可独立复现实验记录或多组交叉验证,且部分验证状态为 unclear,因此扣分。
- 不要将 2026-05-18 的 H100 x16 短跑结果视为通用性能保证;应在目标容器、模型、硬件和通信拓扑上复测。
- 启用 overlap 或 delay_wgrad_compute 前应保存原配置并准备回滚;当前技能未提供系统化回滚步骤。
- 需确认 Megatron Bridge、Transformer Engine、PyTorch、Triton、CUDA 和 DeepEP 版本兼容性;技能未锁定版本。
- 评测报告仅含一个正向任务且未执行本次静态审查中的复现,不能证明负向触发、边界配置或生产稳定性。
这个 Skill 能做什么,适合哪些场景?
该技能面向已完成正确性验证、正在优化吞吐的 Megatron Bridge MoE 训练任务。它涵盖专家并行 dispatch/combine 重叠、flex dispatcher 后端以及 expert wgrad 调度。启用前需要满足专家并行、MoE、精度和流水线并行等前置条件。文档还提供短时 H100 x16 测试结果,但明确说明结果仅具方向性,不能证明所有工作负载都能获益。
指导用户设置 comm_overlap.overlap_moe_expert_parallel_comm、可选的 comm_overlap.delay_wgrad_compute,并在 dispatch overlap 时关闭 model.moe_shared_expert_overlap。它检查专家并行大小、MoE 专家数、dispatcher 类型、精度及 PP/VPP 条件,说明如何激活 flex dispatcher,并定位相关配置、验证逻辑和单元测试。它还提供使用 uv run python scripts/performance/run_script.py 的短时性能 smoke 命令,以及 fused MoE permutation 失败时的隔离测试参数。
- Megatron Bridge 用户在 `EP > 1` 且 profile 中 dispatch 或 combine 通信占据明显时间时调优吞吐。
- 工程师追踪 MoE 吞吐回退,并怀疑 `overlap_moe_expert_parallel_comm` 配置变更导致问题。
- 使用 flex dispatcher 或 DeepEP 的训练者检查 dispatcher 类型与后端设置是否同时生效。
- 启用 pipeline parallelism 的用户验证 VPP 是否已配置,以避免 MoE 重叠调度无法正确交错。
- 性能工程师在 H100 多 GPU 环境中逐项比较 EP overlap 与 delayed wgrad 的短时表现。
这个 Skill 有哪些优点和局限?
- 给出明确的启用配置、前置条件和冲突项。
- 覆盖 alltoall、flex dispatcher、DeepEP 和 delayed wgrad 相关路径。
- 提供代码锚点、初始化验证方式和可复制的性能 smoke 命令。
- 明确区分方向性测试证据与发布级结论。
- 只适用于 MoE 专家并行通信重叠,不是通用的训练性能调优技能。
- 要求 EP 大于 1、多个 MoE 专家、特定 dispatcher 和 BF16/FP16;PP 还要求 VPP。
- full recompute 与该路径不理想,CUDA graph 范围和 delayed wgrad 还会增加限制。
- 性能收益依赖通信在 step time 中的占比;提供的 H100 x16 结果是短时 smoke,未证明普遍收益。
- README 虽说明集合级签名、评估和维护,但给定技能正文未提供其自身的测试结果或签名文件。
如何安装这个 Skill?
使用仓库 README 支持的 skills CLI 安装:npx skills add nvidia/skills --skill nemo-mbridge-perf-moe-comm-overlap --yes。README 未说明该单个技能的其他专用安装方式。
如何使用这个 Skill?
在已稳定的 dispatcher、路由模式和 recompute 计划上,向代理提出:“调优 Megatron Bridge 的 MoE communication overlap,检查 EP overlap、flex dispatcher 和 expert wgrad scheduling。”随后按技能设置通信重叠配置,确认 expert_model_parallel_size > 1、num_moe_experts > 1、dispatcher 为 alltoall 或 flex、精度为 BF16/FP16;若使用 PP,设置非 None 的 VPP。通过初始化日志和 comm_overlap.py 校验确认启用,再使用提供的性能命令逐次只改变一个 overlap 参数。