Skip to content

[Klaud Cold] Port #3393: dsv41flash-fp4-b200-vllm-agentic-dspark to vLLM nightly-ddd6fbca with FlashInfer sparse indexer + fp8 KV - #3459

Merged
functionstackx merged 2 commits into
mainfrom
klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae
Sep 29, 2026
Merged

functionstackx merged 2 commits into
mainfrom
klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae

Conversation

@functionstackx

@functionstackx functionstackx commented Sep 26, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Port of #3393 (by @xinli-sw) onto the srt-slurm recipe that #3428 moved this config to. #3393 edits the shared legacy benchmarks/single_node/agentic/dsv41flash_fp4_vllm_mtp.sh script plus a B200 launcher opt-in, neither of which the B200 DeepSeek-V4.1-Flash vLLM AgentX config uses any more.

Recipes touched: dsv41flash-fp4-b200-vllm-agentic-dspark

Changes:

Topology, conc lists, CUDA-graph ladders and memory limits are unchanged. #3393's settings passed a full sweep on the legacy path (run 35902738208: all 16 AgentX points, GSM8K strict EM 0.978); this PR re-validates them on the native srt-slurm path. Companion B300 port: #3458.

Test plan

  • full-sweep-enabled sweep passes.

@functionstackx
functionstackx requested a review from a team September 26, 2026 05:49
@functionstackx functionstackx added the full-sweep-enabled Full sweep with canary gate; matrix jobs run to completion despite failures label Sep 26, 2026
@functionstackx
functionstackx force-pushed the klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae branch from 0c7637a to b15f933 Compare September 26, 2026 05:49
@github-actions

Copy link
Copy Markdown
Contributor

Thanks for the contribution!

  • Review: If this PR changes files owned by someone other than a repository admin or @SemiAnalysisAI/core, ask one eligible CODEOWNER to complete the latest PR_REVIEW_CHECKLIST.md before contacting a core maintainer on Slack. Follow the template exactly, including As a PR reviewer and CODEOWNER, I have reviewed this and have, so sign-off verification triggers.
  • PR verification: Sweeps only run on labeled PRs. Add full-sweep-fail-fast (strongly recommended); use full-sweep-enabled only when matrix jobs should continue after a failure.
  • After merging: PR authors must ensure all GitHub Actions jobs pass. Transient failures often pass on rerun; see how to rerun failed jobs.
中文

感谢你的贡献!

  • **审阅:**如果 PR 修改的文件归属于仓库管理员及 @SemiAnalysisAI/core 之外的 CODEOWNER,请先联系一位有资格的 CODEOWNER 填写最新的 PR_REVIEW_CHECKLIST.md,再通过 Slack 联系核心维护者。必须严格遵循模板,并保留 As a PR reviewer and CODEOWNER, I have reviewed this and have,才能触发签核验证。
  • **PR 验证:**扫描仅在带有标签的 PR 上运行。强烈建议添加 full-sweep-fail-fast;仅当需要矩阵任务在失败后继续运行时才使用 full-sweep-enabled。
  • **合并后:**PR 作者必须确保所有 GitHub Actions 任务通过。临时性失败通常可以通过重新运行恢复;参见重新运行失败任务的说明。

@claude claude Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beyond the inline finding, I checked whether the new kv-cache-dtype: fp8 and indexer_kv_dtype: mxfp4 settings lower the DSpark draft's effective precision (CONTRIBUTING's draft-model-precision rule) — these are KV-cache/sparse-indexer storage dtypes, not draft-weight overrides, and the unchanged speculative-config block still loads the draft unmodified, consistent with this repo's own precedent for the same kv_cache_dtype=fp8 setting a few lines above in the Kimi-K3 changelog entry.

Extended reasoning...

Config-only PR bumping a vLLM nightly tag, health-check timeouts, and adding a FlashInfer sparse-indexer/fp8-KV attention config plus one perf-changelog entry; no source, launcher, or auth/crypto/permissions code is touched. A CONFIRMED inline finding already flags the unresolved PRLINK_PLACEHOLDER, which is enough on its own to warrant human review, so I deferred rather than approved. I additionally traced the draft-precision question the applicable guidance calls out and found no weight-precision regression, which is worth recording since it's not covered by the inline finding.

Comment thread perf-changelog.yaml Outdated
- dsv41flash-fp4-b200-vllm-agentic-dspark
description:
- "Port #3393 onto the srt-slurm recipe: pin B200 DeepSeek-V4.1-Flash vLLM to the 2026-09-22 nightly 0961bbae (from nightly-cd10ed6f); enable FlashInfer sparse attention (FLASHINFER_MLA_SPARSE_DSV41) with MXFP4 indexer KV and sparse indexer logits at both TP2 and TP4, plus fp8 KV cache; raise the engine readiness timeout to 7200 s (health check 720 x 10 s). Topology, conc lists and memory limits unchanged."
pr-link: PRLINK_PLACEHOLDER

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 The new changelog entry's pr-link uses the literal string PRLINK_PLACEHOLDER, which the repo's merge tooling does not recognize as a placeholder, so merge-time canonicalization for this entry will fail. infx/workflows/validate_perf_changelog.py's PR_LINK_PLACEHOLDERS set only accepts "XXX" or "https://github.com/SemiAnalysisAI/InferenceX/pull/XXX" (validate_added_pr_link, line 142-145); "PRLINK_PLACEHOLDER" matches neither and isn't the expected pull/<pr_number> URL either. Fix: replace pr-link with the documented XXX placeholder (or the real PR URL) so utils/merge_with_reuse.sh's prepare_perf_changelog_merge step can canonicalize it at merge time instead of raising ChangelogValidationError.

Why this was flagged

perf-changelog.yaml:8970 sets pr-link: PRLINK_PLACEHOLDER for the new dsv41flash-fp4-b200-vllm-agentic-dspark entry. When this PR is merged via utils/merge_with_reuse.sh, prepare_perf_changelog_merge.py calls compare_entries -> validate_added_pr_link (infx/workflows/validate_perf_changelog.py:134-145), which only tolerates "XXX"/".../pull/XXX" or the exact expected pull/<pr_number> URL for a new entry. "PRLINK_PLACEHOLDER" is neither, so validate_added_pr_link raises ChangelogValidationError("new PR entry must use ... found 'PRLINK_PLACEHOLDER'"), blocking the reuse-merge path/gate that main relies on for append-only changelog integrity, unlike the base branch where no such stray placeholder exists in this file.

Verification: normal. The new tail entry sets pr-link: PRLINK_PLACEHOLDER (git diff perf-changelog.yaml, added lines under config-keys dsv41flash-fp4-b200-vllm-agentic-dspark). The supported merge command utils/merge_with_reuse.sh <pr> runs python -m infx.workflows.prepare_perf_changelog_merge canonicalize --pr-number "$PR" (merge_with_reuse.sh:169-174). That calls canonicalize_bytes →… | normal.…

@xinli-sw
xinli-sw force-pushed the klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae branch from b15f933 to d06f540 Compare September 26, 2026 14:21
@github-actions

github-actions Bot commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor

@xinli-sw xinli-sw changed the title [Klaud Cold] Port #3393: dsv41flash-fp4-b200-vllm-agentic-dspark to vLLM nightly-0961bbae with FlashInfer sparse indexer + fp8 KV [Klaud Cold] Port #3393: dsv41flash-fp4-b200-vllm-agentic-dspark to vLLM nightly-ddd6fbca with FlashInfer sparse indexer + fp8 KV Sep 26, 2026
@xinli-sw
xinli-sw force-pushed the klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae branch from d06f540 to 372ef1d Compare September 27, 2026 22:13
将 B200 DeepSeek-V4.1-Flash vLLM 配方固定至 nightly-ddd6fbca。
@xinli-sw
xinli-sw force-pushed the klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae branch from 372ef1d to b03620d Compare September 28, 2026 12:40
@functionstackx

Copy link
Copy Markdown
Collaborator Author

/reuse-sweep-run 36423355395

# Conflicts:
#	inferencex-e2e/perf-changelog.yaml
@functionstackx
functionstackx merged commit 32ba7ab into main Sep 29, 2026
25 checks passed
@functionstackx
functionstackx deleted the klaud/dsv41flash-fp4-b200-vllm-agentic-dspark-nightly-0961bbae branch September 29, 2026 00:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

full-sweep-enabled Full sweep with canary gate; matrix jobs run to completion despite failures

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants