Prhub

#44370 [ROCm][CI] Move Model Executor test step from MI250 to MI300 (gfx942)

原始 PR 作者 JartX 合并时间 2026-06-04 01:23 文件变更 1 提交数 2 评论 2 代码增减 +23 / -23

执行摘要

将 Model Executor CI 步骤从 MI250 迁移至 MI300

Model Executor 步骤在 MI250 上因 FP8 量化测试不兼容而失败,且执行时间约 38 分钟。将步骤重新指派到 MI300 可同时解决兼容性和性能问题(PR body 及 reviewer 评论)。

值得关注:这是一个典型的“硬件代际迁移”操作,展示了在 CI 中如何因硬件能力差异(FP8 支持)而调整测试分配,对维护多硬件 CI 的团队有参考价值。

讨论亮点

AndreasKaratzas 在 review 中指出 MI250 上的失败源于量化测试,建议直接将步骤整体迁移到 MI300(gfx942),而非 sharding 或跳过失败用例。JartX 随后按建议执行了纯净迁移。

实现拆解

  1. 删除 MI250 区段的 Model Executor 步骤:在 .buildkite/test-amd.yaml 中移除了位于 # mi250 · model_executor 注释块下的整个步骤定义,包括 labeltimeout_in_minutesmirror_hardwaresagent_pool 等字段。
  2. 在 MI300 区段新增 Model Executor 步骤:在 # mi300 · lora# mi300 · models / language 之间插入新的步骤定义,配置完全一致,但 mirror_hardwares 改为 [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]agent_pool 改为 mi300_1
  3. 测试命令保持不变commands 部分原封不动保留,包括安装依赖、设置环境变量以及执行 pytest -v -s model_executor -m '(not slow_test)'pytest -v -s entrypoints/openai/completion/test_tensorizer_entrypoint.py
文件 模块 状态 重要度
.buildkite/test-amd.yaml CI 配置 modified 4.43

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

评论区精华

Model Executor 步骤迁移方案 设计

AndreasKaratzas 建议直接将 Model Executor 步骤整体迁移到 MI300,而非 sharding 或忽略失败测试。

结论:采纳迁移方案,使用纯净的步骤移动(无并行 sharding)。 · 已解决

风险与影响

风险较低:仅涉及 CI 配置 YAML 的步骤迁移,无任何源码或测试逻辑变更。潜在风险包括 MI300 资源竞争(需确保 agent_pool 容量足够)以及新步骤的 mirror_hardwares 列表是否与已有 CI agent 匹配。

影响范围限于 AMD CI 流水线:Model Executor 测试将从 MI250 机器移动到 MI300 机器执行。FP8 相关测试将获得正常运行环境,整体测试稳定性预期改善。MI250 资源压力略有减轻,MI300 资源消耗增加。

CI 配置变更 资源竞争风险

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论