Repository navigation
Conversation
…eases Signed-off-by: 0z5a <Dezhen.lu@student.uni-tuebingen.de>
Contributor
|
Documentation preview: https://vllm--59522.org.readthedocs.build/en/59522/ |
1 task
6 tasks done
6 tasks done
This branch has not been deployed
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
Mooncake recurrent lookup currently queries and leases every candidate state, including states beyond the KV-supported resume point. Add the default-off
mooncake_kda_last_hit_onlyoption for FullAttention + align-mode Mamba caches, using the selected-onlyLastHitOnlycontract proposed in Mooncake RFC #4255.One existing coordinator pass bounds legal checkpoints from KV evidence, including Eagle and final-token recomputation. The connector sends recurrent keys in checkpoint-major order across the actual group/rank namespaces and returns the exact selected checkpoint for subsequent loading. Partial-hash KV tails retain their existing physical-key handling. Invalid responses and probe failures return a cache miss without a lease-renewing recurrent existence fallback. Shared group leases and unsupported cache types are rejected on opt-in; the default path and lookup wire format remain unchanged.
This draft depends on matching client/Master implementations from Mooncake PR #4314, tested at
7943c052be6aab81c71b60fea9483952dec21141. The selected-only response interface is still under review. No overlapping open vLLM PR was found for4255 in:bodyormooncake LastHitOnlyon 2026-10-01. The change is based on vLLM2e52a558f04307b3f6f842e937e35aac079121c1and contains 889 changed lines across code, tests, documentation and the benchmark.Test Plan
Run the six Mooncake Store suites in the existing Thor Python 3.12 / PyTorch 2.13.0+cu130 runtime, with the separately built CPU/TCP Mooncake binding exposed through
PYTHONPATHandLD_LIBRARY_PATH:Run each benchmark scenario in three fresh processes, using
--selective-firstin the second. Also run the dependency'stest_batch_probe_policy.pyagainst the same Master andmaster_service_probe_policy_test --gtest_filter='BatchProbePolicyTest.*'to verify lease deadlines, soft pinning and eviction behavior directly.Test Result
The real TCP cases verify bytes loaded into both recurrent rank buffers for complete, rank-hole, KV-cap and Eagle scenarios. Unit tests cover 4096 physical existence patterns, unequal namespace counts, duplicate keys, partial-hash tails, recurrent-only lookup and invalid/RPC-error responses. Baseline and modified suites emit the same 14 Torch JIT deprecation warnings. Ruff check/format, Markdown lint, SPDX, forbidden-import, CUDA-call, boolean-context-manager, lazy-import and test-tethering checks passed.
Lookup latency in microseconds; values are medians of three per-process p50 measurements, with 20 warmups and 1000 measured lookups per path. The existing path is the flag-off path on the same worker and data.
The workload has 128 recurrent checkpoints, one KV namespace and four recurrent namespaces, with all recurrent states present. Selective lookup leases four recurrent physical keys instead of 512. TCP selective timing varies substantially between processes; these measurements cover connector lookup and Store control work, without model inference or GPU/token-throughput claims. The committed
benchmarks/mooncake_last_hit_only_results.mdincludes p95 values, key/RPC counts and reproduction details.Essential Elements of an Effective PR Description Checklist