Repository navigation
feat(qwen): support atomic external QSA checkpoints - #864
Conversation
(cherry picked from commit 2ea103e6f081c462d9c07d53401e079579142a42)
Assisted-by: OpenAI Codex
|
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 |
Assisted-by: OpenAI Codex
|
Validated together for Karmic beta on September 23 (vLLM #861–#864 with runtime #68/#69). Stack. Published beta Unit tests. The touched files ( Qwen TP4/DCP2 end to end (4× RTX PRO 6000, MTP3, fp8 KV, LMCache disk L2 with O_DIRECT, vision on,
GLM-5.3 TP4/DCP4/MTP3 end to end (the shared DCP top-k kernel): 6/6 arithmetic answers correct; greedy long-context counting with mixed short requests was 21/21 exact at 12k tokens and 4/4 at 30k. DCP top-k merge kernel (#861). Old versus new kernel, 16 shapes (DCP 2/4, top-k 512/2048, 1–64 rows): the selected sets are identical everywhere. The old order changed between repeated calls; the new order is stable. The kernel costs 0.6–3.1 µs more per call. With 12 QSA layers in Qwen or about 11 DSA layers in GLM-5.3, that is roughly 35 µs per decode step at most. I widened Runtime. Both runtime PRs failed only Configuration notes, unrelated to these PRs:
🤖 Generated with Claude Code |
ccfef88
into
local-inference-lab:integration/karmic-kraken-beta
… requirement PR local-inference-lab#864 gated Qwen KV transfer on the connector advertising supports_request_boundary_checkpoints, but the gate keys only on model type and connector presence. Request-boundary checkpointing cannot engage under an explicit --recurrent-checkpoint-policy aligned setting (use_request_boundary_checkpoints requires "auto"/"request_boundaries"), so the gate rejected exactly the aligned-retention offload configurations that never use the atomic rail, with no way to boot them. Skip the requirement when the policy is explicitly "aligned"; "auto", "request_boundaries", and configs without a cache_config keep the check. The atomic-adapter requirement still applies to every configuration where the boundary rail can engage. Regression tests: policy-parameterized exemption matrix in tests/v1/kv_connector/unit/test_config.py; the existing test_qwen_qsa_requires_atomic_checkpoint_connector (unset policy) still enforces.
#864 requires an atomic request-boundary checkpoint connector for every Qwen KV transfer. That also rejected CACHE_MODE=native: vLLM maps native offload to SimpleCPUOffloadConnector with --recurrent-checkpoint-policy aligned, so every beta since #864 refused to start Qwen with the native CPU cache. Aligned retention does not use request-boundary checkpoints. Accept it when the connector declares supports_aligned_hybrid_transfer (SimpleCPU, and OffloadingConnector with the #869/#870 fixes) and DCP is 1. Other connectors, DCP and the auto/request_boundaries policies keep the atomic requirement. Based on commit 4 of #867, narrowed to connectors that move aligned hybrid state. Co-authored-by: Carlos Augusto <mb@lab.how> Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Martin Vit <martin@voipmonitor.org> (cherry picked from commit 212f46b)
Summary
Allow Qwen QSA external KV transfer only through connectors that provide atomic request-boundary checkpoints. This enables LMCache restore without permitting an incomplete recurrent state.
Target:
integration/karmic-kraken-beta. This includes.lil/changes/vllm-864.json. Runtime PR #69 depends on this change.Validation
c62f4b72bd; all changed Python files passed Python 3.12py_compile, andgit diff origin/integration/karmic-kraken-beta..HEAD --checkpassed. The container publisher'svalidate_fragmentaccepted the new fragment.Duplicate check
No open KK integration PR enables Qwen QSA request-boundary KV transfer. Existing recurrent-checkpoint work does not lift Qwen QSA's connector prohibition.
AI assistance: OpenAI Codex helped prepare and rebase this change. Human review and integration qualification remain required before merge.