Skip to content

[WIP] MiniMax-M3 B300: use FlashInfer split-K nightly#2148

Open
jasonlizhengjian wants to merge 1 commit into
mainfrom
codex/minimaxm3-b300-flashinfer-nightly
Open

[WIP] MiniMax-M3 B300: use FlashInfer split-K nightly#2148
jasonlizhengjian wants to merge 1 commit into
mainfrom
codex/minimaxm3-b300-flashinfer-nightly

Conversation

@jasonlizhengjian

Copy link
Copy Markdown
Collaborator

Summary

  • bump the MiniMax-M3 NVFP4 B300 vLLM image
  • install the July 10 FlashInfer nightly containing upstream SM100 low-M MXFP8 split-K support
  • use FP8 indexer KV cache and extend the model execution timeout
  • remove DP-attention points from the non-MTP sweep

Validation

  • bash -n benchmarks/single_node/fixed_seq_len/minimaxm3_fp4_b300.sh
  • generated 31 non-MTP B300 rows with dp-attn=false
  • pytest utils/matrix_logic/ -q (189 passed)
  • verified all three pinned FlashInfer release assets resolve

@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 关于重新运行失败任务的文档

@jasonlizhengjian jasonlizhengjian force-pushed the codex/minimaxm3-b300-flashinfer-nightly branch from e64ae62 to 59794db Compare July 10, 2026 13:40
@jasonlizhengjian jasonlizhengjian marked this pull request as ready for review July 10, 2026 13:42
@jasonlizhengjian jasonlizhengjian requested a review from a team July 10, 2026 13:42
@claude

claude Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Claude finished @jasonlizhengjian's task in 4m 47s —— View job


Review

  • Read PR diff vs origin/main
  • Review benchmark script changes (FlashInfer pin, new vLLM flags)
  • Validate configs/nvidia-master.yaml changes (image accessibility, sweep points)
  • Validate perf-changelog.yaml entry position
  • Verify pinned FlashInfer release assets & Docker image resolve

LGTM - no blocking issues found

Details of what was checked:

  • perf-changelog.yaml entry is correctly appended at the end of the file, and the master-config change is documented with the PR link.
  • The new image vllm/vllm-openai:nightly-2afa3f7e950264bb179d030c23a1ed1f46558fd9 is a public Docker Hub reference.
  • The new --attention_config.indexer_kv_dtype fp8 and VLLM_EXECUTE_MODEL_TIMEOUT_SECONDS=1800 both have prior art in this repo (the FP8 MiniMax-M3 recipes and the DSV4 agentic multi-node recipes respectively). The underscore form --attention_config. is parsed identically to the sibling scripts' --attention-config. by vLLM's FlexibleArgumentParser, so it works — though matching the dash form used in minimaxm3_fp8_b300.sh would keep the scripts consistent.
  • Each FlashInfer wheel install fails fast with a clear error, so a pulled/renamed nightly asset can't silently fall through to a stale FlashInfer.
  • The MTP variant (minimaxm3-fp4-b300-vllm-mtp) uses its own script and keeps the old image, so the DP-attention removal and FlashInfer pin are correctly scoped to the non-MTP sweep only.

Note: my sandbox blocked outbound network calls, so I could not independently re-verify that the three FlashInfer release assets and the Docker Hub tag resolve — relying on the author's validation there; the labeled full sweep will fail fast if either is missing.

@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