vLLM adds bi-directional KV transfer to cut TTFT in multi-turn agent workloads
The vLLM blog describes bi-directional KV cache transfer for prefill-decode (P-D) disaggregated serving: on later turns of a conversation, a decode node can return previously computed KV to the prefill node so shared context is not recomputed. In multi-turn benchmarks on a 1P1D deployment using Amazon EC2 P5en instances with AWS Elastic Fabric Adapter, the feature reduced TTFT by up to 1.6x for Qwen3-32B and up to 3.3x for zai-org/GLM-5-FP8, with results depending on workload and configuration. The capability was originally built and validated on AWS Trainium clusters and contributed to vLLM as an accelerator-agnostic feature.
Multi-turn agent workloads resend conversation history each turn, and repeated prefill computation consumes accelerator capacity and raises time to first token; bi-directional transfer lets prefill nodes reuse KV retained on decode nodes instead of recomputing it.
Multi-turn agentic workloads build on accumulated context as an agent reasons, invokes tools, and incorporates earlier results. With each new turn, the client resends the conversation history, including system instructions, prior prompts, tool results, and model responses, causing the growing context to be processed repeatedly. In Prefill-decode (P-D) disaggregation, each request is split across specialized nodes: the prefill node processes the prompt and builds its KV cache, then the decode node retrieves those KV blocks and generates the response.
Conventional disaggregated serving, however, only transfers KV cache in one direction: from prefill to decode node. This one-directional flow creates two inefficiencies for multi-turn workloads. First, after generating a response, the decode node holds KV cache entries for both the prompt and the newly generated tokens. When processing the next turn, the prefill node cannot retrieve those entries, so it must recompute the KV projections for the previous response tokens. Second, the decode node maintains the session state while the prefill nodes do not, increasing the probability of cache eviction for active sessions on the prefill nodes. On a full cache miss, the prefill node must recompute KV projections for the entire conversation history, including system instructions, prior user requests, tool results, and model-generated responses. As the conversation grows, this redundant work consumes more accelerator capacity and increases time to first token (TTFT).
#vLLM#AWS#Qwen3-32B#GLM-5-FP8#zai-org#AWS Trainium#Amazon EC2 P5en#AWS Elastic Fabric Adapter#NIXL