Prhub

#22346 [CI] Set RUNAI_STREAMER_MEMORY_LIMIT=0 for stage-b-test-1-gpu-small

原始 PR 作者 alexnails 合并时间 2026-04-08 17:23 文件变更 1 提交数 2 评论 4 代码增减 +1 / -0

执行摘要

为 CI 测试作业设置无限内存缓冲,解决模型加载超时问题。

PR body指出,runai模型加载测试从公共GCS桶流式加载CodeGemma 2B模型(5.6 GiB,165张量)时,流式加载器的默认内存缓冲上限导致其在预取前阻塞消费,使吞吐量从~3秒/迭代降至~42秒/迭代,总耗时18分钟(5.3 MiB/s),导致CI作业超时(引用链接:https://github.com/sgl-project/sglang/actions/runs/24119332733/job/70380386973?pr=20310)。设置RUNAI_STREAMER_MEMORY_LIMIT=0可启用无限内存缓冲,匹配已有工作流(diffusion-ci-gt-gen和pr-test-multimodal-gen)的做法,并遵循PR #17636。

该PR变更简单直接,无需精读。值得关注的是CI环境中流式加载器的内存缓冲调优模式,可作为类似性能问题的参考。对于基础设施团队,可了解如何通过环境变量优化大型模型加载测试。

讨论亮点

Review中无实质性技术讨论,仅hnyls2002批准PR。Issue评论显示作者alexnails和合并者hnyls2002通过/rerun-stage和/rerun-test命令验证修复,并确认在main分支上重跑成功(链接:https://github.com/sgl-project/sglang/actions/runs/24128218280)。

实现拆解

仅修改一个文件:.github/workflows/pr-test.yml。在stage-b-test-1-gpu-small作业的环境变量部分添加RUNAI_STREAMER_MEMORY_LIMIT: 0,使流式加载器在运行test_runai_model_loader测试时不受内存缓冲限制。

文件 模块 状态 重要度
.github/workflows/pr-test.yml CI/Workflow modified 5.0

分析完成后,这里会展示 LLM 生成的相对完整源码片段和详细注释。

评论区精华

CI 测试验证 测试

Issue 评论中通过 /rerun-stage 和 /rerun-test 命令验证修复效果。

结论:确认在 main 分支上重跑成功,测试通过。 · 已解决

风险与影响

风险较低:

  1. 设置无限内存缓冲可能增加CI运行节点的内存使用,但PR body指出已有类似工作流采用此设置,表明风险可控。
  2. 变更仅影响特定CI作业,不涉及生产代码,回归风险小。
  3. 缺少对内存使用量的具体监控,但鉴于测试模型大小固定(5.6 GiB),影响有限。

影响范围限于CI基础设施:

  1. 用户无感知,不影响系统功能。
  2. 确保stage-b-test-1-gpu-small作业中的runai模型加载测试稳定运行,避免超时失败,提升CI可靠性。
  3. 团队受益于更快的测试反馈和减少的CI重试成本。影响程度中等,因解决特定测试性能问题,但非核心功能变更。
内存使用增加 CI 特定变更

关联 Issue

未识别关联 Issue

当前没有检测到明确关联的 Issue 链接,后续同步到相关引用后会出现在这里。

完整报告

参与讨论