Skip to content

[Klaud Cold] minimaxm3-fp4-mi355x-atom-agentic-mtp: day-zero MiniMax-M3 MXFP4 ATOM AgentX recipe on MI355X / MI355X 上 MiniMax-M3 MXFP4 ATOM AgentX 首发配方 - #2733

Open
functionstackx wants to merge 2 commits into
mainfrom
feat/minimaxm3-fp4-mi355x-atom-agentic-mtp
Open

[Klaud Cold] minimaxm3-fp4-mi355x-atom-agentic-mtp: day-zero MiniMax-M3 MXFP4 ATOM AgentX recipe on MI355X / MI355X 上 MiniMax-M3 MXFP4 ATOM AgentX 首发配方#2733
functionstackx wants to merge 2 commits into
mainfrom
feat/minimaxm3-fp4-mi355x-atom-agentic-mtp

Conversation

@functionstackx

@functionstackx functionstackx commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

Summary / 摘要

Day-zero MiniMax-M3 MXFP4 AgentX recipe on MI355X served by ATOM with EAGLE3 speculative decoding. minimaxm3 currently has no ATOM coverage in AgentX — the vLLM MI355X arm is the only MI355X entry — so this adds the ATOM arm.

在 MI355X 上新增由 ATOM 服务的 MiniMax-M3 MXFP4 AgentX 配方,采用 EAGLE3 投机解码。minimaxm3 目前在 AgentX 中没有 ATOM 覆盖(MI355X 上仅有 vLLM 分支),本 PR 补上 ATOM 分支。

Config key / 配置项

minimaxm3-fp4-mi355x-atom-agentic-mtpamd/MiniMax-M3-MXFP4, rocm/atom-dev:nightly_202608251555 (latest ATOM nightly, verified on Docker Hub), cluster:mi355x-amds, TP4, conc [1, 4, 8, 12, 16], no KV offloading.

Recipe decisions / 配方要点

  • TP4. MiniMax-M3 has four KV heads, so TP4 gives exactly one KV head per rank and keeps the AITER sparse-attention fast path — the same reason the vLLM MI355X sibling runs TP4.

  • EAGLE3, 3 draft tokens, drafter Inferact/MiniMax-M3-EAGLE3 (the PoR draft the retired ATOM MI355X recipe used). Throughput runs pin --spec-decode-acceptance-length 2.83 from golden_al_distribution/minimaxm3_eagle3.yaml (thinking_on[3]); eval-only runs drop the pin and use real target verification.

  • Prefix caching enabled. The retired single-turn 8k1k ATOM recipe passed --no-enable_prefix_caching; that is deliberately not carried over — trace replay is exactly the workload prefix caching pays for.

  • No --hf-overrides index-cache block. The vLLM arm sets {"text_config": {"use_index_cache": true, "index_topk_freq": 4}}; this ATOM recipe deliberately does not.

  • No launcher change needed: runners/launch_mi355x-amds.sh already resolves <prefix>_<precision>_mi355x_<framework><_mtp>.sh under agentic/, and already routes amd/MiniMax-M3* weights to the NFS HF cache.

  • TP4:MiniMax-M3 有 4 个 KV head,TP4 使每个 rank 恰好一个 KV head,可走 AITER 稀疏注意力快速路径,与 vLLM MI355X 同类配方一致。

  • EAGLE3、3 个草稿 token,草稿模型 Inferact/MiniMax-M3-EAGLE3。吞吐运行按 golden_al_distribution/minimaxm3_eagle3.yamlthinking_on[3])锁定 --spec-decode-acceptance-length 2.83;仅评测运行取消锁定,使用真实目标验证。

  • 启用前缀缓存:已退役的单轮 8k1k ATOM 配方使用 --no-enable_prefix_caching,此处刻意不沿用——轨迹回放正是前缀缓存最有价值的负载。

  • 不添加 --hf-overrides 索引缓存参数:vLLM 分支设置了 {"text_config": {"use_index_cache": true, "index_topk_freq": 4}},本 ATOM 配方刻意不设置。

  • 无需改动 launcher:runners/launch_mi355x-amds.sh 已能解析 agentic/ 下的脚本名,并已将 amd/MiniMax-M3* 权重指向 NFS HF 缓存。

Files / 改动文件

  • benchmarks/single_node/agentic/minimaxm3_fp4_mi355x_atom_mtp.sh (new)
  • configs/amd-master.yaml — new entry after the vLLM MI355X sibling
  • perf-changelog.yaml — appended entry

Note / 说明

A sibling PR builds the same config key from the upstream ROCm/ATOM Qwen3.5 recipe shape instead. The two are mutually exclusive candidates — merge whichever sweeps green, not both.

另有一个同类 PR 按上游 ROCm/ATOM Qwen3.5 recipe 的形态实现同一配置项。两者互斥,只应合并全量 sweep 通过的那一个。

🤖 Generated with Claude Code


Note

Low Risk
Benchmark and YAML config only; no changes to application runtime, auth, or shared orchestration logic beyond registering a new sweep recipe.

Overview
Adds day-zero AgentX coverage for amd/MiniMax-M3-MXFP4 on MI355X served by ATOM (alongside the existing vLLM arm), via new config key minimaxm3-fp4-mi355x-atom-agentic-mtp and benchmark script minimaxm3_fp4_mi355x_atom_mtp.sh.

The recipe runs TP4 / EP1 / no DP-attention / no KV offload, sweeps concurrency 1, 4, 8, 12, 16, and uses EAGLE3 with drafter Inferact/MiniMax-M3-EAGLE3 and three draft tokens. Throughput runs pin --spec-decode-acceptance-length to 2.83 from the committed golden curve; EVAL_ONLY drops the pin for real target verification. The ATOM server enables prefix caching, PTPC FP8 online quant, Triton sparse attention (ATOM_FORCE_ATTN_TRITON), and required atom: Prometheus metrics for AIPerf.

perf-changelog.yaml documents the new matrix entry.

Reviewed by Cursor Bugbot for commit 28edf09. Bugbot is set up for automated code reviews on this repo. Configure here.

…X recipe on MI355X

Add the MiniMax-M3 MXFP4 agentic-coding recipe on MI355X served by ATOM with
EAGLE3 speculative decoding (Inferact/MiniMax-M3-EAGLE3, 3 draft tokens).
TP4 keeps one KV head per rank for the AITER sparse-attention fast path,
matching the vLLM MI355X sibling. Throughput runs pin acceptance to the
committed golden EAGLE3 curve (AL 2.83); eval-only runs keep real target
verification. Prefix caching stays enabled, unlike the retired single-turn
8k1k ATOM recipe. Image is the latest rocm/atom-dev nightly.

新增 MI355X 上由 ATOM 服务的 MiniMax-M3 MXFP4 智能体编码配方,采用 EAGLE3
投机解码(Inferact/MiniMax-M3-EAGLE3,3 个草稿 token)。TP4 使每个 rank 恰好
一个 KV head,从而走 AITER 稀疏注意力快速路径,与 vLLM MI355X 同类配方一致。
吞吐运行将接受长度锁定到已提交的黄金 EAGLE3 曲线(AL 2.83),仅评测运行仍使用
真实目标验证。与已退役的单轮 8k1k ATOM 配方不同,本配方保持前缀缓存启用。
镜像使用最新的 rocm/atom-dev nightly。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…link

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Thanks for the contribution! Please reach out to respective companies' CODEOWNER to fill in the latest PR_REVIEW_CHECKLIST.md before pinging core maintainer on Slack for review. In order for the signoff PR check bot to trigger, you must follow the PR_REVIEW_CHECKLIST.md template correctly, including the phrase As a PR reviewer and CODEOWNER, I have reviewed this and have.

For PR verification, add the full-sweep-fail-fast label (strongly recommended) to this PR — the benchmark sweep only runs on labeled PRs. Use full-sweep-enabled only if you need matrix jobs to keep running past a failure.

PR authors are responsible for ensuring that after merging, all GitHub Action jobs fully pass. A lot of the time, failures are just flakes and simply re-running the failed jobs will fix it. See GitHub's docs on re-running failed jobs


感谢你的贡献!请联系相应公司的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,然后再在 Slack 上联系核心维护者进行审阅。为了触发 signoff PR 检查机器人,你必须正确遵循 PR_REVIEW_CHECKLIST.md 模板,包括保留英文语句 As a PR reviewer and CODEOWNER, I have reviewed this and have

如需进行 PR 验证,请为此 PR 添加 full-sweep-fail-fast 标签(强烈推荐)— 基准测试 sweep 仅在带有标签的 PR 上运行。仅当需要矩阵任务在失败后继续运行时才使用 full-sweep-enabled

PR 作者有责任确保合并后所有 GitHub Action 任务完全通过。 很多时候失败只是偶发抖动(flake),重新运行失败的任务即可解决。参见 GitHub 关于重新运行失败任务的文档

@github-actions

Copy link
Copy Markdown
Contributor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

1 participant