Repository navigation
Conversation
Preserve live slot and KV custody while bounding compatible text-prefill opportunities. This does not preempt pinned outer admission or promise wall-clock service across incompatible adapters.
|
Measured on the M5 (2026-10-28 ~16:05Z, serving down). Qwen3.6-35B-A3B with the live flags (
That's head-of-line blocking removed with no cost to the big prompt. Live residents show the same problem: the median 2k-token prefill took 21.6 s over 90 requests, and 22 epoch-turnover re-prefills over 10k tokens took 58% of all prefill time. Script and output: 🤖 Generated with Claude Code |
|
PASS (source) at 31d07d0 (Cormac). Read: the whole PR diff (5 files) and server-context.cpp at this head, lines 3605-4180: the prompt-slot lambda end to end. The claim I verified: every prompt token added to the batch is accounted, and nothing else is. Rotation also fixes a starvation case the PR does not mention. Non-blocking:
Carry-forward to the live line: not yet possible. Fable's pin bump is the cherry-pick 7be73db on 0d48ef8 (branch fable/prefill-fairness-test). Neither object is on origin ( |
With separate KV caches, a long cold prompt currently fills each text-prefill batch before later slots are visited. Rotate pointer traversal after the last slot that contributes tokens so compatible admitted prompts receive service without cancelling requests, moving slots or discarding KV. Shared/unified KV retains its original physical traversal: this change does not establish shared-pool capacity reservation.
Decode-time debt, batch compatibility, continuous batching and prompt processing remain authoritative. When no generating slot sets the compatibility anchor, the first contributing prompt now rotates in non-unified mode; can_batch_with is unchanged. The guarantee covers compatible admitted text-prefill opportunities, not wall-clock latency. Full-slot outer admission, unified-KV fairness, incompatible adapter groups and multimodal chunk duration remain separate work.
The model-free test-server-prefill exercises the production ordering/accounting helper with cold/warm prompts, repeated low-index arrivals, multiple contributors, skips, empty pools, compatibility exclusion and both KV modes. Server CI explicitly compiles llama-server and runs the fixture on Ubuntu and Windows, rejecting missing tests. No local compilation beside serving.
Based on deployed 4a79fed on fable/decode-time-share. No deployment or performance acceptance claimed. Live acceptance must verify the resolved KV mode: automatic parallelism can enable unified KV even without an explicit flag. After Fable's KV work, compare warm submit-to-first-token under cold prefill. Goal9 d9b0dfe5; AI-assisted implementation.
Independent source review approved 31d07d0 conditional exact-head CI. Earlier968b Ubuntu integration failed the tiny unified-context [90,90,40,90] case; baseline39917134314 and candidate39917177908 investigate that failure. This is not waived as a flake, and the earlier source verdict does not substitute for CI.