[KV Connector][NIXL] Support MRV2 prefill PCP replicas - #2
Closed
LucasWilkinson wants to merge 23 commits into
Closed
[KV Connector][NIXL] Support MRV2 prefill PCP replicas#2LucasWilkinson wants to merge 23 commits into
LucasWilkinson wants to merge 23 commits into
Conversation
…dled_fp8_variants (MI355) (vllm-project#49329) Signed-off-by: Stefan Koncarevic <Stefan.Koncarevic@amd.com>
Signed-off-by: Nick Hill <nickhill123@gmail.com>
Signed-off-by: Nick Hill <nickhill123@gmail.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…llm-project#49380) Signed-off-by: pei.zhang <pei.zhang@amd.com> Co-authored-by: Claude <noreply@anthropic.com>
…pdates (vllm-project#49178) Signed-off-by: aoshen02 <aoshen02@users.noreply.github.com> Co-authored-by: aoshen02 <aoshen02@users.noreply.github.com>
Signed-off-by: Isotr0py <Isotr0py@outlook.com>
…ng the new MK oracle scheme. (vllm-project#44120) Signed-off-by: Bill Nell <bnell@redhat.com> Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: mgoin <mgoin64@gmail.com>
…m-project#49294) Signed-off-by: Lucas Wilkinson <lwilkins@redhat.com> Co-authored-by: OpenAI Codex <codex@openai.com>
Signed-off-by: Woosuk Kwon <woosuk@inferact.ai>
Signed-off-by: Andreas Karatzas <Andreas.Karatzas@amd.com>
Signed-off-by: Kunshang Ji <kunshang.ji@intel.com>
…ime HIP init) (vllm-project#47992) Signed-off-by: Stefan Koncarevic <stefan.koncarevic@amd.com> Co-authored-by: Andreas Karatzas <akaratza@amd.com>
…oject#49396) Signed-off-by: Guan-Ming (Wesley) Chiu <105915352+guan404ming@users.noreply.github.com>
…#49297) Signed-off-by: ZeldaHuang <zelda.huanghuang@gmail.com>
…t#49374) Signed-off-by: khluu <khluu000@gmail.com> Co-authored-by: OpenAI Codex <codex@openai.com>
Signed-off-by: zhenwei-intel <zhenwei.liu@intel.com>
Signed-off-by: xiaolong <xiaolong.guo@intel.com>
…ing models online serving. (vllm-project#49153) Signed-off-by: wang.yuqi <yuqi.wang@daocloud.io>
Co-authored-by: OpenAI Codex <codex@openai.com> Signed-off-by: Connor Carpenter <connorc@nvidia.com>
…llm-project#49045) Signed-off-by: Sage Ahrac <sagiahrak@gmail.com>
…htly (vllm-project#49326) Signed-off-by: Andrey Talman <atalman@fb.com>
Select PCP rank zero as the canonical producer KV replica and suppress duplicate producer completion events from non-canonical ranks. Extend the NIXL accuracy launcher and unit coverage for prefill PCP. Co-authored-by: OpenAI Codex <codex@openai.com> Signed-off-by: Lucas Wilkinson <lwilkins@redhat.com>
LucasWilkinson
force-pushed
the
codex/nixl-prefill-pcp
branch
from
July 22, 2026 14:10
7db1f00 to
5054d49
Compare
Owner
Author
|
Superseded by reopened upstream draft vllm-project#49342, now rebased directly onto current main. |
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.
Purpose
Support NIXL P/D disaggregation when an MRV2 prefill producer uses Prefill Context Parallelism (PCP) and the decode consumer remains PCP1/DCP1.
MRV2 PCP gathers prefill K/V inputs before cache insertion, so PCP replicas at the same TP/PP position own the same complete KV shard. NIXL handshake metadata is keyed by PP/TP only; publishing every PCP replica therefore overwrites the same identity and makes completion aggregation wait for or process duplicate producer events.
This change:
TP x PPworkers;finished_sendingevents from non-canonical replicas while still allowing their local cleanup; andPREFILLER_PCP_SIZE.The validated topology is:
Related work and duplicate check
Live searches for NIXL PCP, prefill context parallel NIXL, replica selection, and completion handling found no open PR implementing this NIXL ownership fix.
Test plan and results
Focused PCP/NIXL regression coverage:
.venv/bin/python -m pytest tests/v1/kv_connector/unit/test_nixl_connector.py -k 'pcp_producer or pcp_consumer or pcp_non_publishing' -qResult:
5 passed, 68 deselected.Full NIXL connector unit file:
Result: pytest reported
73 passedin 176.91 seconds. The process subsequently segfaulted during UCX shared-library teardown inrtnl_tc_unregister, after the completed pytest result.DeepSeek-V2-Lite-Chat NIXL P/D GSM8K:
Result: all 1,319 questions completed, with strict-match accuracy
0.6535253980; expected0.65 ± 0.05. The pytest evaluation passed in 112.14 seconds. The shell wrapper received a cleanup signal while terminating the prefill/decode servers after the passing result.Pre-commit passed on all four changed files, including ruff, mypy, shellcheck, sign-off, and repository policy hooks.
git diff --checkpassed. A static GPU-sync audit found no new host-device synchronization calls.AI assistance disclosure
OpenAI Codex assisted with investigation, implementation, testing, evaluation, and drafting this PR.