Agentic serving is irregular at the turn but stable at the conversation: one compute-bound turn-1 prefill + a long memory-bound tail. Scheduling the conversation (not the turn) replaces unobservable decode-cost prediction with two observable signals — turn-1 input length and per-decoder KV occupancy. ConServe cuts p95 TTFET by 51% vs a per-turn baseline with zero SLO violations.
Q1 (痛点). An agentic task is not a single request but a stateful multi-turn program: turn 1 is a long compute-bound prefill (tens of thousands of tokens); turns 2+ append only short tool outputs and are memory-bound decode over a KV cache that only grows. Prior multi-turn systems keep the turn as the scheduling unit and decide per-turn whether to disaggregate. That decision depends on decode length, tool behavior, and KV growth — all unobservable at the moment the scheduler acts — so they must predict. Any predictor eventually misroutes a turn. There is also a scheduling–value mismatch: systems optimize per-turn TTFT/TBT, but the user only reads the conversation's final effective output; most intermediate turns emit tool calls no user sees.
Q2 (方法). Raise the scheduling unit from turn to conversation. At conversation granularity the turn-level irregularity collapses into a stable two-phase structure — one compute-bound first-turn prefill, then one long memory-bound tail — which restores the classical prefill–decode abstraction with a single KV transfer at the boundary. ConServe instantiates this: route turn-1 prefill to a high-throughput prefiller, transfer KV exactly once, then pin the conversation to one decoder for its entire tail (all turn-2+ append-prefill and decode run locally with full KV reuse). Placement reads only two observable signals: the offline-profiled deterministic prefill-latency curve (indexed by turn-1 input length) and per-decoder active KV occupancy. No learned decode-cost model. The 核心技术壁垒 is the reframing itself: the prediction dependence is a property of the scheduling unit, not the workload — coarsening the unit to the conversation makes placement deterministic and provisions the prefiller (whose load is observable) as the deliberate bottleneck.
Q3 (结果). vs AMPD (per-turn prediction, 10% wrong-prediction rate): −51.08% p95 TTFET, +7.51% energy efficiency, similar last-turn TBT, zero SLO violations through the 1.634 conv/s saturation point. Mapping the two phases onto heterogeneous tiers (200W decoders) adds a further +22.75% tokens-per-joule with essentially unchanged latency.

Paper's Figure 9 (caption: "ConServe System Architecture"). The system runs PD-disaggregated: one prefiller node processes input prompts, N decoder replicas generate output. A conversation is bound to one decoder at arrival and stays there for life; turn-1 prefill runs on the prefiller, its KV cache transfers once to the bound decoder, and all later turns' incremental prefill + decode run locally on that decoder with full KV reuse. One routing decision per conversation, zero decode-side prediction.
The per-turn agent loop and how ConServe places it:
W includes it) during which the KV slot stays reserved.This is an analytical-provisioning model, not a formal-guarantee proof: 无形式化作者证明 — 仅实证 for the scheduling outcome (latency/SLO/energy). What could have been bounded but is left empirical: end-to-end TTFET as a function of arrival rate, and the SLO-violation rate under prediction error. The paper does give a closed-form provisioning model for how many decoders to allocate.
Notation table
| Symbol | Meaning |
|---|---|
| $N$ | number of decoder replicas |
| $T_d$ | per-decoder token throughput |
| $R$ | conversation arrival rate |
| $L_d$ | mean per-conversation token volume handled by decoders (turn-1 decode + all turn-2+ prefill & decode) |
| $B$ | concurrent-conversation slots per decoder (KV-capacity bound) |
| $W$ | mean wall-clock conversation lifetime incl. external tool-call time |
| $T_p$ | prefill input throughput |
| $L_{in}$ | mean turn-1 input length |
| $R^{*}$ | prefill-saturation arrival rate |
方程物理意义. Two decoder-side constraints must hold simultaneously:
$$N \cdot T_{d} \geq R \cdot L_{d} \quad \text{(throughput)}$$
$$N \cdot B \geq R \cdot W \quad \text{(memory)}$$
Constraint 1: aggregate decoder throughput must keep up with total token demand. Constraint 2: aggregate KV slots must hold every concurrently-live conversation, including those blocked on tool calls. The prefill node saturates at
$$R^{*} = \frac{T_{p}}{L_{in}}$$
ConServe picks integer $N$ that over-satisfies both inequalities at $R = R^{*}$, deliberately placing the bottleneck on the prefiller — where the driving signal (input token rate) is observable at admission and maps deterministically to utilization via the offline latency curve.
Six minimum checks:
Workload: SWE-bench_bm25_13K traces via swe-agent (generated with Qwen3-Coder-30B-A3B), replayed on a 4-GPU A40 machine serving Qwen3-0.6B (small served model chosen for KV headroom). Baselines: Collocated, Full Disaggregation, AMPD (per-turn prediction).

Paper's Figure 1. Turn-1 input is tens of thousands of tokens; turn-2+ appends (tool responses) are hundreds. Output-token counts are high-variance and unpredictable — the empirical root of why decode-side cost cannot be forecast, motivating the whole thesis.

Paper's Figure 2 (caption notes $R^2=1.0$). Uncached prefill TTFT grows quadratically (attention-dominated) once inputs exceed $10^4$ tokens — contradicting the common linear model — but is highly predictable ($R^2=1.0$). Prefix caching flattens TTFT to near-constant, cutting latency ~2 orders of magnitude at long inputs. This is what makes turn-1 input length a usable deterministic scheduling signal.

Paper's Figure 4. Mean TBT is stable at small batch/context but climbs sharply once memory bandwidth saturates (upper-right of the dashed boundary). Agentic tasks' long contexts sit firmly in the saturated (memory-bound) region — confirming the tail phase is memory-bound.

Paper's Figure 10 (AMPD at 10% wrong prediction). The load-bearing result: at saturation ConServe holds steady on p95 TTFET while Collocated and AMPD degrade sharply. Full Disaggregation is >10× baseline on TTFET/E2E (it re-pays prefill + KV transfer every turn) yet wins last-turn TBT (1.35× vs ConServe's 2.49×) — a baseline that dominates one metric while losing the headline one.

Paper's Figure 12. At 0% error AMPD reduces exactly to ConServe (local turn-2+ execution always dominates in this workload), so the per-turn mechanism only ever adds error, never benefit. At 5% error, SLO violations already reach ~7.8% (TTFET)/6.3% (E2E); by 50% both grow linearly past 50% violations and tokens-per-joule declines toward 58 tok/J. This linear degradation is the paper's core empirical demonstration of structural brittleness; ConServe has no such curve.
| # | Step | Support |
|---|---|---|
| 1 | Agentic conversations = one long compute-bound turn-1 prefill + a long memory-bound tail of short appends (input distribution). | §1, §3 / Fig.1 |
| 2 | Turn-1 prefill TTFT is a deterministic (quadratic, $R^2=1.0$) function of input length; prefix caching makes turn-2+ prefill near-free; KV transfer is marginal at agentic input sizes. | §3.1 / Fig.2, Fig.3 |
| 3 | Decode is memory-bound and its per-iteration/end-to-end latency is high-variance and unpredictable. | §3.2 / Fig.4, Fig.5, Fig.6 |
| 4 | Therefore per-turn schedulers must predict unobservable decode-side cost; raising the unit to the conversation makes placement depend only on observable turn-1 input length + KV occupancy. | §1, §4.2 |
| 5 | Provisioning $N$ decoders to over-satisfy the throughput/memory constraints at $R^{*}$ places the bottleneck on the observable prefiller, bounding its load → zero SLO violations by construction. | §4.1, §5.3 / Fig.10 |
| 6 | Per-turn prediction degrades SLO/energy linearly with error rate; ConServe stays flat. | §5.4 / Fig.12 |
| 7 | The compute/memory phase split maps onto GPU tiers: capping decoders to 200W adds +22.75% tokens/J with unchanged latency, since the memory-bound tail absorbs the power cut. | §3.3, §4.3, §5.5 / Fig.7, Fig.8, Fig.13 |
Built on vLLM (Kwon et al. 2023) as the serving engine and LMCache (Cheng et al. 2025) as the PD-disaggregation manager. No public ConServe repository is referenced in the source. [实现未公开]
核心技术壁垒 (single hardest-to-replicate insight). The value is not an engineering trick but the reframing: recognizing that prediction dependence is imposed by the scheduling unit, not the workload, and that coarsening to the conversation collapses turn irregularity into the classical two-phase (compute-bound / memory-bound) abstraction with a single KV-transfer boundary. Everything else (reactive placement, over-provisioning, tier mapping) follows mechanically once you accept the conversation is the unit. Replicating the idea is trivial; arriving at it against the field's per-turn default is the hard part, and it is validated by the fact that the strongest per-turn baseline degenerates to ConServe at 0% error (its mechanism is net-negative here).
关键实现细节 (easy-to-miss tricks).