Prhub

#21710 [AMD] Add GLM-5-FP8 nightly performance benchmarks for MI30x and MI35x

原始 PR 作者 michaelzhang-ai 合并时间 2026-04-08 13:43 文件变更 6 提交数 2 评论 6 代码增减 +345 / -5

执行摘要

为 AMD MI30x 和 MI35x 平台新增 GLM-5-FP8 模型的夜间性能基准测试。

根据PR body,动机是添加GLM-5-FP8夜间性能基准测试以匹配NV/InferenceX配置,确保跨平台行为一致性。作者引用关联Issue评论,建议添加--reasoning-parser和--tool-call-parser标志以对齐测试设置。

建议团队关注此PR以了解AMD性能测试框架的扩展,但需后续处理review中提出的代码质量问题,如重构重复函数和修复除零风险,以确保测试健壮性。

讨论亮点

review中gemini-code-assist[bot]指出多个问题:函数generate_simple_markdown_report在多个文件重复,应移至共享模块;ITL计算存在除零风险;MI35x测试硬编码HF_HOME路径降低可移植性;MI35x配置缺少SGLANG_USE_AITER环境变量可能导致性能偏差。这些评论未被直接解决,PR在获得批准后合并。

实现拆解

实现分为三个部分:

1) 修改CI工作流文件(nightly-test-amd.yml和nightly-test-amd-rocm720.yml),在GLM-5测试任务中添加性能测试步骤,设置continue-on-error以避免阻塞CI。
2) 新增性能测试文件(test_glm5_perf_amd.py和test_glm5_perf_mi35x.py),定义测试类使用bench_one_batch方法,配置模型路径、TP=8、FP8 KV缓存等参数。
3) 更新准确性测试文件,切换模型至zai-org/GLM-5-FP8并添加parser flags。

文件 模块 状态 重要度
.github/workflows/nightly-test-amd.yml ci-workflow modified 7.0
test/registered/amd/perf/mi30x/test_glm5_perf_amd.py test-performance added 8.0
test/registered/amd/perf/mi35x/test_glm5_perf_mi35x.py test-performance added 8.0
test/registered/amd/accuracy/mi30x/test_glm5_eval_amd.py test-accuracy modified 5.0

关键符号

generate_simple_markdown_report TestNightlyGLM5Performance.setUpClass TestGLM5PerfMI35x.setUpClass

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

评论区精华

代码重复问题 设计

gemini-code-assist[bot] 指出 generate_simple_markdown_report 函数在多个测试文件中重复,建议移至共享模块以提升维护性。

结论:未在 PR 中解决,可能作为未来改进项。 · 待处理

除零错误风险 正确性

reviewer 提示 ITL 计算中 result.output_throughput 可能为零,导致 ZeroDivisionError,建议添加零值检查。

结论:未修复,存在测试崩溃的潜在风险。 · 待处理

硬编码路径可移植性 设计

MI35x 测试中硬编码 HF_HOME 和 HF_HUB_CACHE 路径至 /data2/...,降低测试在非 CI 环境的可移植性。

结论:未调整,可能限制测试运行灵活性。 · 待处理

环境变量不一致 性能

MI35x 配置缺少 SGLANG_USE_AITER 环境变量,而 MI30x 启用,可能导致性能结果偏差,影响跨平台比较。

结论:未添加,可能使性能监控数据不准确。 · 待处理

风险与影响

技术风险包括:除零错误可能导致测试崩溃,影响CI稳定性;硬编码路径使测试依赖特定环境,降低可移植性;环境变量不一致可能使MI35x性能结果不准确;代码重复增加维护成本。此外,性能测试使用continue-on-error,失败可能被忽略,掩盖潜在问题。

对用户无直接影响,属于内部测试增强。对系统:新增夜间性能监控,有助于识别AMD平台性能回归。对团队:提供标准化基准数据,支持性能优化决策,并促进跨平台配置对齐。

代码重复 除零风险 硬编码依赖 环境变量不一致

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论