Prhub

#49551 [ROCm][CI] Language Models tests tiny-mixtral with aiter fix

原始 PR 作者 music-dino 合并时间 2026-07-24 03:01 文件变更 1 提交数 1 评论 1 代码增减 +0 / -8

执行摘要

移除对 tiny-mixtral 的 aiter rmsnorm/MOE 禁用

PR body 指出,在 ROCm 的 aiter 测试中,TitanML/tiny-mixtral 模型由于未训练导致 logprob 分布近乎均匀,对 bf16 舍入差异敏感。之前通过设置环境变量 VLLM_ROCM_USE_AITER_RMSNORM=0VLLM_ROCM_USE_AITER_MOE=0 来禁用 aiter 的 rmsnorm 和 MOE 内核以通过测试。但该禁用是通过 pytest_sessionstart 实现的,而测试套件运行时的根目录不同,导致 hook 未生效。现在 aiter 内核已修复,测试可以完全使用 aiter 通过,因此移除这些禁用标志。

该 PR 是清理性质的代码删除,值得阅读以理解之前数值问题的解决过程和 pytest hook 陷阱。对于 ROCm 平台维护者,这是及时的技术债务清理。

讨论亮点

只有一条来自 claude[bot] 的自动评论,提示 PR 来自 fork 无法自动审查。随后 AndreasKaratzas 批准了 PR,没有进一步的讨论。

实现拆解

  1. 在文件 tests/models/language/generation/test_common.pytest_models 函数中,移除了针对 TitanML/tiny-mixtral 模型的特殊处理分支。
  2. 该分支原本会通过 monkeypatch.setenv 设置环境变量以禁用 aiter 的 rmsnorm 和 MOE 内核。
  3. 现在当 use_rocm_aiter=True 且模型在 AITER_MODEL_LIST 中时,只设置 VLLM_ROCM_USE_AITER=1,不再区分模型是否 tiny-mixtral。
  4. 移除的代码包括 8 行注释和 monkeypatch.setenv 调用,还删除了一个针对 tiny-mixtral 的嵌套条件。
文件 模块 状态 重要度
tests/models/language/generation/test_common.py 测试 modified 4.68

关键源码片段

tests/models/language/generation/test_common.py test-coverage

这是唯一修改的文件,删除了针对 tiny-mixtral 的 aiter rmsnorm 和 MOE 禁用逻辑,共 8 行代码。

# tests/models/language/generation/test_common.py 中 test_models 函数片段
if use_rocm_aiter and (model in AITER_MODEL_LIST):
    monkeypatch.setenv("VLLM_ROCM_USE_AITER", "1")
    # 移除以下代码块:
    # if model == "TitanML/tiny-mixtral":
    # # Untrained model: near-uniform logits make argmax sensitive to
    # # AITER's bfloat16 rounding error...
    # monkeypatch.setenv("VLLM_ROCM_USE_AITER_RMSNORM", "0")
    # monkeypatch.setenv("VLLM_ROCM_USE_AITER_MOE", "0")
elif use_rocm_aiter and model not in AITER_MODEL_LIST:
    pytest.skip(f"Skipping '{model}' model test with AITER kernel.")

评论区精华

自动审查因 fork 被禁用 other

claude[bot] 评论说 PR 来自 fork 所以自动审查被禁用,需要维护者手动触发。

结论:无需要解决的讨论;AndreasKaratzas 随后批准了 PR,未进一步讨论。 · 已解决

风险与影响

风险极低。被删除的代码之前因 pytest hook 作用域问题从未在测试中生效,因此移除不会引入回归。aiter 内核的修复已经通过测试验证(15 passed, 0 failed)。但如果 aiter 内核修复不完全,tiny-mixtral 模型在特定场景下可能再次出现数值不稳定性。

影响范围仅限于 ROCm 平台上的 tiny-mixtral 模型测试。用户不会有功能感知,测试通过数从 13 提升到 15,运行时间从 980s 缩短到 631s(减少了 35%),因为不再需要为 tiny-mixtral 回退到原生内核。

关联 Issue

未识别关联 Issue

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

完整报告

参与讨论