# PR #22609 完整报告

- 仓库：`sgl-project/sglang`
- 标题：[CI] Update B200 est_times to prevent timeouts on slower machine
- 合并时间：2026-04-12 12:40
- 原文链接：http://prhub.com.cn/sgl-project/sglang/pull/22609

---

## 执行摘要
本 PR 更新了 9 个 B200 GPU 测试文件的预计执行时间（est_time），基于慢机器的实际运行时间加上 20% 缓冲，以防止因硬件性能差异导致的 CI 超时。这是一项基础设施维护性调整，直接影响测试稳定性，但变更简单且风险较低。

## 功能与动机
**为什么做？**PR body 明确说明，有两台 B200 机器存在硬件性能差异：第二台机器在 HBM 带宽（慢 1.6 倍）和磁盘 I/O（慢 2.8 倍）上显著较慢，导致测试运行时间延长约 1.8 倍。原始 est_time 基于快机器校准，在慢机器上频繁超时，例如链接所示的超时示例。更新目的是通过校准时间估计，确保 CI 测试分区能正常完成，避免不必要的失败。

## 实现拆解
**做了什么？**实现仅涉及配置调整，无逻辑代码变更：
- **修改文件**：9 个测试文件，每个文件修改一行 `register_cuda_ci(est_time=..., suite="stage-c-test-4-gpu-b200")` 中的 `est_time` 参数。
- **调整策略**：基于慢机器的实际运行时间加上 20% 缓冲计算新值。例如：
 | 测试文件 | 旧 est_time | 新 est_time | 缓冲率 |
 |---|---|---|---|
 | `test_gpt_oss_4gpu.py` | 312 秒 | 740 秒 | ~20% |
 | `test_cutedsl_moe.py` | 13 秒 | 590 秒 | ~20% |
 | `test_deepseek_v3_fp4_4gpu.py` | 1146 秒 | 1380 秒 | ~20% |
- **提交历史**：分两次提交，先更新 6 个测试，再补充 4 个，显示增量优化过程。

## 评论区精华
**讨论了什么？**review 中无实质性技术讨论，仅有一个 bot 评论表示无反馈。提交历史表明调整是基于持续监控和优化，无需深入设计权衡或争议。

## 风险与影响
**风险分析**：
- **估计不准确风险**：est_time 仍依赖当前硬件性能，未来变化可能导致超时或 CI 时间不必要延长。例如，`test_cutedsl_moe.py` 的调整幅度大，需确保缓冲足够。
- **性能影响**：提高 est_time 可能增加 CI 整体运行时间，但权衡下优先保证测试稳定性。

**影响分析**：
- **直接**：减少 B200 测试超时失败，提升 CI 可靠性和团队效率。
- **间接**：可能轻微延长 CI 流程，但对用户和系统功能无影响。
- **范围**：仅影响内部测试基础设施，不涉及核心 SGLang 功能。

## 关联脉络
**跨 PR 关联**：
- **PR 15528**：引入动态负载均衡分区，同样优化 CI 测试时间和平衡性，与本 PR 的校准策略互补。
- **PR 22602**：优化依赖下载以减少 CI 时间，都属于基础设施效率改进。
- **PR 22228**：修复 AMD 测试超时，显示团队持续关注硬件差异导致的 CI 问题。

**演进趋势**：近期多个 PR 聚焦 CI 基础设施优化（如负载均衡、依赖管理、超时修复），表明团队在提升测试稳定性和效率方面持续投入，本 PR 是这一脉络中的常规维护步骤。