Prhub

#21524 [AMD] Add MiniMax-M2.5 nightly perf benchmarks for MI30x and MI35x

原始 PR 作者 michaelzhang-ai 合并时间 2026-04-03 16:01 文件变更 4 提交数 1 评论 2 代码增减 +338 / -4

执行摘要

为 AMD MI30x 和 MI35x 添加 MiniMax-M2.5 模型的夜间性能基准测试。

根据 PR body,目标是添加性能基准测试以监控 MiniMax-M2.5 模型在 AMD 硬件上的性能,扩展 CI 测试覆盖,并遵循现有的结合准确性和性能的模式(如 Grok1-INT4、Grok2 等)。这有助于持续跟踪性能指标,确保模型在 AMD 硬件上的表现符合预期。

对于关注 AMD 硬件性能测试和 CI 扩展的工程师,此 PR 值得精读以了解如何将性能基准测试集成到现有 CI 模式中,特别是 continue-on-error 策略和准确性与性能结合的设计决策。对于其他读者,可重点关注测试文件的结构和配置,以借鉴类似测试的编写方法。

讨论亮点

Review 中没有具体讨论内容,两个审核者(bingxche 和 HaiShaw)直接批准,表明变更被认为直接且无争议。因此,没有值得提炼的争议点或决策过程。

实现拆解

实现拆解为两个主要部分:1) 新增测试文件:在 test/registered/amd/perf/ 目录下添加 mi30x/test_minimax_m25_perf_amd.py 和 mi35x/test_minimax_m25_perf_mi35x.py,分别定义针对 MI30x 和 MI35x 的性能测试套件,配置包括 TP=8、EP=8、aiter 后端和批量大小 1/8/16/64。2) 修改 CI 工作流:更新 .github/workflows/nightly-test-amd.yml 和 .github/workflows/nightly-test-amd-rocm720.yml,在每个相关的准确性测试作业后添加性能测试步骤,设置超时 120 分钟和 continue-on-error: true 以允许性能测试失败不影响整体 CI。

文件 模块 状态 重要度
test/registered/amd/perf/mi30x/test_minimax_m25_perf_amd.py test/amd/perf added 5.0
test/registered/amd/perf/mi35x/test_minimax_m25_perf_mi35x.py test/amd/perf added 5.0
.github/workflows/nightly-test-amd.yml CI modified 4.0
.github/workflows/nightly-test-amd-rocm720.yml CI modified 4.0

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

关键符号

generate_simple_markdown_report TestNightlyMiniMaxM25Performance TestNightlyMiniMaxM25PerformanceMI35x

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

技术风险包括:性能测试可能因硬件资源限制或环境波动而失败,但通过 continue-on-error: true 设置减轻了 CI 整体失败的风险;新增测试增加了 CI 运行时间和资源消耗(超时 120 分钟),可能影响其他作业的调度;测试覆盖新模型配置(如 aiter 后端),需要确保与现有基础设施兼容,避免因配置错误导致误报。

影响范围:对用户,提供更全面的性能数据,帮助监控 AMD 硬件上 MiniMax-M2.5 模型的表现;对系统,CI 流程略有延长,但不会因性能测试失败而阻塞构建;对团队,增强测试套件,支持持续性能监控和优化,为 AMD 硬件性能调优提供数据支持。影响程度中等,主要限于测试和 CI 层面。

CI 依赖新增测试 性能测试可能不稳定 资源消耗增加

关联 Issue

未识别关联 Issue

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

完整报告

执行摘要

本 PR 为 AMD MI30x 和 MI35x 硬件添加了 MiniMax-M2.5 模型的夜间性能基准测试,通过扩展现有 CI 工作流在准确性测试后集成性能步骤,遵循准确性与性能结合模式,使用 continue-on-error 策略确保 CI 稳定性,提升了对 AMD 硬件性能的监控能力。

功能与动机

为什么做? 根据 PR body,目标是扩展 CI 测试覆盖,为 AMD 硬件的 MiniMax-M2.5 模型添加性能基准测试,以持续跟踪性能指标。这遵循了已有的结合准确性和性能的模式(如 Grok1-INT4、Grok2 等),确保模型在 AMD 硬件上的表现符合预期。

实现拆解

改动点按模块梳理:

  1. 测试文件新增
    - test/registered/amd/perf/mi30x/test_minimax_m25_perf_amd.py:定义 MI30x 性能测试套件,配置 TP=8、EP=8、aiter 后端,批量大小 1/8/16/64,输入长度 4096,输出长度 512。
    - test/registered/amd/perf/mi35x/test_minimax_m25_perf_mi35x.py:类似但针对 MI35x 硬件,包含环境变量设置和报告生成函数。
    - 关键代码逻辑:generate_simple_markdown_report 函数生成简化 Markdown 报告,跳过预热运行;TestNightlyMiniMaxM25Performance 类设置测试配置。
  2. CI 工作流修改
    - .github/workflows/nightly-test-amd.yml.github/workflows/nightly-test-amd-rocm720.yml:在每个 MiniMax-M2.5 准确性测试作业后添加性能测试步骤,设置 continue-on-error: true 和 120 分钟超时,使用 scripts/ci/amd/amd_ci_exec.sh 执行测试。

评论区精华

Review 讨论摘要: 没有具体讨论内容,审核者 bingxche 和 HaiShaw 直接批准,表明变更被认为直接且无争议,无需深入技术交锋。

风险与影响

技术风险:

  • 性能测试可能因硬件资源限制或环境波动而失败,但通过 continue-on-error: true 减轻了 CI 整体失败风险。
  • 新增测试增加了 CI 运行时间和资源消耗(超时 120 分钟),可能影响其他作业调度。
  • 测试覆盖新模型配置(aiter 后端),需确保与现有基础设施兼容,避免配置错误导致误报。

影响评估:

  • 对用户:提供更全面的性能数据,帮助监控 AMD 硬件上模型表现。
  • 对系统:CI 流程略有延长,但不会因性能测试失败阻塞构建。
  • 对团队:增强测试套件,支持持续性能监控和优化,为 AMD 硬件调优提供数据支持。

关联脉络

与历史 PR 的关联:

  • PR 21519 修复了 bench_one_batch 中的并行元数据错误,与本 PR 的性能测试直接相关,确保性能分析准确性。
  • PR 21947 和 PR 20871 涉及 AMD 硬件性能优化和代码路径统一,反映出团队持续关注 AMD 性能改进的趋势,本 PR 是这一脉络中的测试扩展环节。
  • 整体来看,这些 PR 共同推动了 AMD 硬件的测试覆盖和性能监控,为系统稳定性和优化提供支撑。

参与讨论