Prhub

#39531 [ROCm][CI] Introducing new MI300 nodes

原始 PR 作者 AndreasKaratzas 合并时间 2026-04-20 16:09 文件变更 2 提交数 30 评论 4 代码增减 +1966 / -2319

执行摘要

启用 AMD MI300 单 GPU 测试代理,优化 CI 测试分布。

根据PR body,动机是'Enabling new 1 GPU MI300X test agents',即启用新的单GPU MI300X测试代理,以支持AMD最新硬件的CI测试。

对于CI/基础设施工程师,值得精读此PR以了解AMD硬件测试配置和资源优化策略;对于核心开发者,只需关注测试结果的潜在变化。建议关注CI配置的组织方式、测试分组逻辑和资源请求设置。

讨论亮点

review中,gemini-code-assist[bot]指出配置错误:有测试步骤请求num_gpus: 2但MI300_8是单GPU队列,会导致CI失败;tjtanaa询问是否有测试用例没运行任何测试以节省资源。讨论结论是这些问题被识别,PR最终被批准,但提示了CI配置需精细化以避免资源浪费和失败。

实现拆解

  1. 修改CI配置文件:在.buildkite/test-amd.yaml中新增'gfx942 — mi300_8 (single-GPU shadow)'测试组,包含多个单GPU测试步骤(如核心功能、模型推理、量化测试),指定agent_pool: mi300_8并避免多GPU请求。
  2. 调整测试文件:将tests/quantization/test_mi3xx_moe.py重命名为test_gfx950_moe.py,并更新函数名从test_mi3xx_moetest_mi355_moe,以准确反映MI355硬件型号,保持测试占位符。
  3. 提交历史迭代:30次提交显示多次合并主分支和配置调整(如'Redistributed MI300 tests'、'Commented out a temporarily dead test group'),确保与最新代码兼容并优化资源使用。
  4. 测试配套:无新增源码测试,主要是配置和重命名,以支持未来测试扩展。
文件 模块 状态 重要度
.buildkite/test-amd.yaml CI 配置 modified 6.1
tests/quantization/test_gfx950_moe.py MoE 量化测试 renamed 5.26

关键符号

test_mi355_moe

关键源码片段

.buildkite/test-amd.yaml configuration

主 CI 配置文件,新增 MI300 单 GPU 测试步骤组,影响整个 AMD CI 管道和测试分布。

# gfx942 — mi300_8 (single-GPU shadow) # 新增测试组头,针对 AMD MI300 单 GPU 节点
steps:
  - label: "V1 Core + KV + Metrics (1 GPU)" # 单 GPU 测试步骤标签
    timeout_in_minutes: 120 # 设置超时
    agent_pool: mi300_8 # 指定代理池为 MI300 单 GPU 队列,确保资源匹配
    command: pytest -v -s tests/v1/core/test_core.py # 运行核心功能测试
    soft_fail: false # 不允许软失败,确保测试严格性
  # 其他类似步骤省略,如模型测试、量化测试等,均配置为单 GPU

评论区精华

CI 配置错误导致资源不匹配 正确性

gemini-code-assist[bot] 指出测试步骤请求 `num_gpus: 2` 但安排在单 GPU 队列 `mi300_8`,会导致 CI 失败,强调配置需精确匹配硬件资源。

结论:需要移除或修正这些多 GPU 测试步骤,确保配置正确,以避免 CI 作业失败。 · 已解决

优化 CI 资源使用以减少浪费 性能

tjtanaa 询问是否有测试用例没运行任何测试,以节省资源,指向潜在的空测试组增加 CI 成本。

结论:可能已通过提交历史中的调整(如注释掉无用测试组)来处理,以减少资源浪费。 · 已解决

风险与影响

主要风险是配置错误:如果多GPU测试被错误地安排在单GPU队列(如.buildkite/test-amd.yaml中的某些步骤),会导致CI作业失败,影响测试稳定性。此外,测试文件重命名可能影响测试发现流程,需确保所有引用更新。资源浪费风险:空测试或无用测试组可能增加CI成本。

对系统影响:扩展CI测试能力,支持AMD MI300硬件,提高vLLM在该平台上的测试覆盖和兼容性。对团队:开发者能更早发现和修复AMD相关问题,但可能略增CI运行时间和资源成本。用户无直接影响,但间接提升软件稳定性和性能。

配置错误风险 测试覆盖偏差

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论