[DCP] Default query replication for GLM sparse attention - #50382
Merged
LucasWilkinson merged 4 commits intoAug 21, 2026
Merged
Conversation
LucasWilkinson
marked this pull request as ready for review
July 30, 2026 23:41
LucasWilkinson
requested review from
ProExpertProg,
WoosukKwon,
hmellor,
houseroad,
mgoin,
robertgshaw2-redhat,
tlrmchlsmth,
yewentao256 and
youkaichao
as code owners
July 30, 2026 23:41
robertgshaw2-redhat
approved these changes
Jul 31, 2026
Collaborator
|
nice find! |
tlrmchlsmth
approved these changes
Jul 31, 2026
Collaborator
Author
|
/run ci |
Collaborator
Author
|
/ci run |
|
✅ Triggered Buildkite CI #84623 for commit |
Contributor
|
Hi @LucasWilkinson, the pre-commit checks have failed. Please run: uv pip install pre-commit>=4.5.1
pre-commit install
pre-commit run --all-filesThen, commit the changes and push to your branch. For future commits, |
Contributor
|
Hi @LucasWilkinson, the pre-commit checks have failed. Please run: uv pip install pre-commit>=4.5.1
pre-commit install
pre-commit run --all-filesThen, commit the changes and push to your branch. For future commits, |
Add an explicit DCP query-replication CLI/config option while preserving the existing environment override. Resolve the automatic default only for GLM sparse-attention models with decode DCP enabled, and keep other MLA architectures opt-in. Co-authored-by: OpenAI Codex <noreply@openai.com> Signed-off-by: Lucas Wilkinson <lwilkins@redhat.com>
Every consumer of dcp_comm_backend already gates on decode_context_parallel_size > 1, so selecting "a2a" without DCP selects no different code path. Rejecting the combination only got in the way once models started supplying a2a as their default. Signed-off-by: Lucas Wilkinson <lwilkins@redhat.com> Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
LucasWilkinson
force-pushed
the
codex/qrep-cli-glm-default
branch
from
August 21, 2026 03:10
0b7f530 to
1b33f97
Compare
Collaborator
Author
|
/ci run |
|
✅ Triggered Buildkite CI #84947 for commit |
LucasWilkinson
enabled auto-merge (squash)
August 21, 2026 03:13
am-cohere
pushed a commit
to am-cohere/vllm
that referenced
this pull request
Sep 1, 2026
…t#50382) Signed-off-by: Lucas Wilkinson <lwilkins@redhat.com> Co-authored-by: OpenAI Codex <noreply@openai.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
--dcp-q-replicateand--no-dcp-q-replicateas explicit CLI options;VLLM_DCP_Q_REPLICATEas the highest-precedence override;glm_moe_dsamodels when decode DCP is enabled and PCP is not enabled;The automatic default removes GLM's decode query all-gather at the cost of replicating the query projection weights across DCP ranks. Explicit CLI or environment selections still override the model default.
Performance and memory
GLM-5.2-NVFP4, TP=4, DCP=4, 32K input tokens, 128 output tokens, batch 8, two warmups, five measured iterations:
With QREP enabled, a fresh DCP backend comparison measured:
ag_rsa2aFor the matched 32K benchmark configuration, model-loading memory increased from 110.37 GiB/rank to 114.94 GiB/rank with QREP, approximately +4.57 GiB/rank.
Model evaluation
GLM-5.2-NVFP4, TP=4, DCP=4, GSM8K 5-shot, 300 questions:
The QREP-off evaluation used
max_num_seqs=32because FlashInfer's sparse-MLA workspace overflowed when all prompts were scheduled concurrently. Both runs evaluated the same 300 questions with the same decoding settings. The one-point difference is not significant at this sample size.AI assistance
AI assistance was used for implementation, tests, benchmarking, profiling analysis, and drafting this description. The human submitter has reviewed.