Prhub

#22228 [AMD] Fix Timeout: stage-b-test-2-gpu-large-amd,stage-b-test-1-gpu-large-amd

sgl-project/sglang · 作者 yctseng0211 · 合并时间 2026-04-11 13:55

分析状态 已生成
文件变更 3提交数 7 · 评论 2
代码增减 +4 / -4
amd run-ci

执行摘要

调整 AMD CI 测试超时配置,修复 stage-b 测试超时问题。

PR标题和body明确指出动机是修复AMD CI流水线中stage-b-test-2-gpu-large-amd和stage-b-test-1-gpu-large-amd两个测试任务的超时问题。作者提供了相关CI运行链接作为参考,表明这些测试在现有配置下无法在规定时间内完成。

该PR变更简单直接,主要是CI配置调整,无需深入阅读代码逻辑。值得关注的是:1) 团队对AMD CI超时问题采取了“增加资源”而非“优化测试”的解决思路。2) Review中提出的根本原因问题未得到解答,可能需要在后续工作中跟进。建议CI维护者关注这些测试在AMD平台上的性能表现,考虑是否有优化空间。

讨论亮点

Review中仅有一次实质性讨论:HaiShaw询问“Any idea why est_time is so much longer, and a way to root fix ?”,但作者未在PR讨论中回复此问题。最终HaiShaw批准了PR,表明团队接受了当前配置调整作为临时解决方案,但根本原因(如AMD硬件性能差异、测试效率问题)未在讨论中深入探究。

实现拆解

实现方案从三个层面调整AMD CI测试配置:1) 在.github/workflows/pr-test-amd.yml中,将stage-b-test-1-gpu-large-amd任务的part矩阵从[0,1]扩展到[0,1,2],并将auto-partition-size从2增加到3,从而将测试负载分散到更多并行任务中。2) 在test/registered/perf/test_bench_serving_2gpu.py中,将AMD CI的est_time从1100分钟增加到1450分钟,更准确地反映实际执行时间。3) 在test/registered/rl/test_update_weights_from_distributed.py中,将AMD CI的est_time从103分钟大幅增加到400分钟,以匹配测试的实际耗时。

文件 模块 状态 重要度
.github/workflows/pr-test-amd.yml CI/Workflows modified 8.0
test/registered/perf/test_bench_serving_2gpu.py Test/Performance modified 5.0
test/registered/rl/test_update_weights_from_distributed.py Test/RL modified 5.0

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

评论区精华

est_time 大幅增加的根本原因 question

HaiShaw 询问为什么 est_time 需要大幅增加,以及是否有根本性修复方法。

结论:未在讨论中得到解答,PR 以配置调整方式合并。 · unresolved

风险与影响

主要风险包括:1) 配置调整可能掩盖了测试本身的性能问题或潜在bug,而非解决根本原因。2) 大幅增加est_time(如从103分钟到400分钟)可能影响CI流水线的整体调度效率和资源利用率。3) 增加分区数量(从2到3)可能增加CI运行成本,但未评估是否必要。这些风险集中在CI配置层面,对核心功能代码无直接影响。

对用户无直接影响,这是内部CI基础设施的调整。对团队的影响是:1) 正面:减少AMD CI测试的超时失败,提高开发流程的稳定性。2) 负面:可能延长CI整体运行时间,增加资源消耗。影响范围限于AMD硬件平台的CI测试配置,不涉及其他硬件后端或生产代码。

配置调整掩盖根本问题 CI 资源消耗增加

关联 Issue

未识别关联 Issue

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

完整报告

执行摘要

该PR通过调整AMD CI测试的分区数量、预估执行时间和超时配置,修复了stage-b-test-2-gpu-large-amd和stage-b-test-1-gpu-large-amd两个测试任务的超时问题。这是针对AMD硬件平台CI稳定性的基础设施优化,变更集中在配置文件层面,对核心功能代码无影响。虽然解决了即时问题,但review中提出的根本原因疑问未得到解答,可能需要在后续工作中关注AMD测试性能优化。

功能与动机

  • 问题背景:AMD CI流水线中,stage-b-test-2-gpu-large-amd和stage-b-test-1-gpu-large-amd两个测试任务频繁超时,影响开发流程稳定性。
  • 解决目标:通过配置调整确保测试能在限定时间内完成,减少CI失败。
  • 关键表述:PR标题直接点明“Fix Timeout: stage-b-test-2-gpu-large-amd,stage-b-test-1-gpu-large-amd”,body中提供了相关CI运行链接作为问题佐证。

实现拆解

文件路径 变更内容 影响
.github/workflows/pr-test-amd.yml part矩阵从[0,1]扩展到[0,1,2]auto-partition-size从2增加到3 测试负载分散到更多并行任务,减少单个任务执行时间
test/registered/perf/test_bench_serving_2gpu.py register_amd_ciest_time从1100分钟增加到1450分钟 更准确反映AMD平台性能测试耗时,避免CI调度超时
test/registered/rl/test_update_weights_from_distributed.py register_amd_ciest_time从103分钟大幅增加到400分钟 匹配RL测试在AMD平台的实际执行时间

评论区精华

  • 核心疑问:Reviewer HaiShaw提出关键问题:

    “Any idea why est_time is so much longer, and a way to root fix ?”

这触及了配置调整背后的根本原因——为什么AMD平台测试需要如此大幅增加时间?是硬件性能差异、测试效率问题,还是潜在bug?但讨论在此终止,作者未回复,PR最终以配置调整方式合并。

风险与影响

  • 技术风险
    1. 配置调整可能掩盖测试本身的性能问题或bug,而非解决根本原因。
    2. 大幅增加est_time(如从103分钟到400分钟)可能影响CI流水线调度效率和资源利用率。
    3. 增加分区数量可能提升CI运行成本,但未评估是否必要。
  • 影响范围
    • 对用户:无直接影响。
    • 对团队:减少AMD CI超时失败,提高开发流程稳定性;但可能延长CI整体运行时间,增加资源消耗。
    • 对系统:仅影响AMD硬件平台的CI测试配置,不涉及其他后端或生产代码。

关联脉络

  • 历史PR关联
    • 22565 和 #22563:同样涉及CI测试est_time更新,但本PR是手动针对AMD平台调整,而历史PR更多关注自动化更新和跨后端区分。

    • 22264:同属AMD平台相关PR,涉及依赖升级和CI配置,反映团队对AMD生态的持续投入。

  • 演进趋势:近期多个PR(如#22565、#22563、#22557)聚焦CI测试时间估算优化,本PR是这一趋势在AMD平台的具体体现,但采用了更直接的配置调整而非系统性优化。

参与讨论