fix(checkpoint): deduplicate request-boundary payload pages - #64
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
4a9bd75 to
5f60948
Compare
Signed-off-by: derek <derek.yates@live.com>
5f60948 to
91bbbb8
Compare
91bbbb8
into
local-inference-lab:feat/atomic-recurrent-checkpoint-transport-pr
|
The exact signed commit is now included in the #62 atomic-checkpoint transport branch, preserving Derek Yates’s authorship. GitHub marked this PR merged into that feature branch; this is not a merge into dev. #62 is the canonical review target for the combined transport and immutable-payload deduplication. The composed R29 runtime passes 138 checkpoint/storage/engine-driven CPU tests; GPU serving and restart qualification is still pending. |
Summary
Fixes R28/R28.1 request-boundary LMCache write amplification without changing the boundary scheduler or model execution path.
This is intentionally boundary-mode only. It does not select or depend on aligned checkpoint scheduling.
Stacked on #62 because the atomic recurrent checkpoint transport is not yet on
dev.Fixes local-inference-lab/vllm#716.
Root cause
The R28.1 connector assigned every boundary a random generation and included that generation in every target/recurrent/draft object key. A later turn therefore rewrote the complete historical attention state.
INSERT OR REPLACEupdated the manifest but did not make those generation-scoped payloads reusable.Measured on the released R28.1 image before this fix:
Implementation
The new schema authenticates each page with the cache namespace, exact token-prefix chain, cache-group semantics, physical rank, and storage group.
The 200K content-key path reuses hash-chain endpoints. Its added median CPU cost is 0.220 ms; the pre-existing token-root construction is 12.986 ms.
Validation
Exact image base:
voipmonitor/vllm:jovian-judgement-community-20260908-r28.1(sha256:52ef7badcc33918f276d778d29bd972a798297584ba776476c7c09b7bdb50e5f). TP4/DCP4, MTP3, FP8 KV, full-and-piecewise graphs, scheduler budget 4096, fairness/interleaving enabled.Correctness and durability
Matched performance
RAM-only A/B isolates model/scheduler performance from NVMe activity. Same R28.1 base and launch configuration; only this patch differs.
Speculative output-token rates are not used for the regression decision because MTP acceptance varied between runs. Verifier execution and prefill show no attributable regression.
Compatibility
Schema-v1 manifests remain readable with their generation-scoped v2 object keys. New schema-v2 manifests use content-addressed v3 object namespaces, preventing old/new payload mixing. The first store of an already-cached schema-v1 prefix may republish it once in the new format; subsequent generations reuse content keys.