Skip to content

[NIXL][PCP][DCP] Expose PCP producer KV shards as transfer ranks - #3

Closed
LucasWilkinson wants to merge 1 commit into
PatrykSaffer:patryk/pcp-dcp-sparse-mlafrom
LucasWilkinson:codex/nixl-pcp-dcp-main
Closed

LucasWilkinson wants to merge 1 commit into
PatrykSaffer:patryk/pcp-dcp-sparse-mlafrom
LucasWilkinson:codex/nixl-pcp-dcp-main

Conversation

@LucasWilkinson

@LucasWilkinson LucasWilkinson commented Sep 11, 2026 •

Copy link
Copy Markdown

Expose TP1 PCP+DCP KV shards as NIXL transfer ranks, reusing DCP mapping and completion handling.

Stacks on vllm-project#56157; replaces vllm-project#54496. Adds transfer topology missing from vllm-project#56157; distinct from vllm-project#45340's block accounting.

GLM-5.2-NVFP4, PCP4+TP1+EP4+DCP4 → TP4, with additional accuracy/offload fixes: controlled GSM8K 28/32 with GPU caching and 28/32 with CPU KV offload (direct TP4: 26/32). All 32 GPU/CPU pairs matched tokens and log probabilities exactly, with verified CPU hits. Long-context CPU restores passed; NIXL byte comparison, including a partial block: 146,716,800 bytes, zero mismatches. These model results require the linked fixes; they are not results for this PR alone.

Validation: 89 focused NIXL tests passed; additional-fix suite 502 passed, 19 skipped, followed by 101 passing indexer tests after final edits. Pre-commit/mypy passed.

Test commands
.venv/bin/python -m pytest tests/v1/kv_connector/unit/test_nixl_connector.py -k 'pcp_producer or scheduler_advertises_transfer_topology'
.venv/bin/python -m pytest tests/v1/kv_connector/unit/{test_tp_mapping,test_nixl_push_connector}.py
.venv/bin/python -m pytest tests/v1/attention/{test_indexer_dcp_localize,test_flashmla_sparse_pcp_dcp}.py tests/v1/simple_kv_offload/{test_worker,test_scheduler}.py tests/kernels/test_top_k_per_row.py -q
.venv/bin/python -m pytest tests/v1/attention/test_indexer_dcp_localize.py -q

AI assistance: OpenAI Codex. Draft pending human review and validation.

Rebase vllm-project#54496 onto vllm-project#56157. Publish each TP1 PCP+DCP producer shard
through the existing DCP transfer topology and retain upstream
completion aggregation. Share transfer-size calculation between the
pull and push schedulers and validate the PCP/DCP group in the connector.

Cover shard publication, completion, push scheduling, and advertised
transfer topology for replicated and sharded producers.

Co-authored-by: OpenAI Codex <noreply@openai.com>
Signed-off-by: Lucas Wilkinson <lwilkins@redhat.com>

@NickLucche NickLucche left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Looks pretty clean!

@LucasWilkinson

Copy link
Copy Markdown
Author

Recreated against vllm-project/vllm:main now that vllm-project#56157 has merged: vllm-project#56645

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants