LGDCDec 9, 2023

Stateful Large Language Model Serving with Pensieve

arXiv:2312.05516v358 citationsh-index: 7EuroSys
Originality Incremental advance
AI Analysis

This addresses the problem of high computational overhead in LLM serving for multi-turn conversations, offering a domain-specific optimization.

The paper tackles the inefficiency of stateless LLM serving in multi-turn conversations by introducing Pensieve, a system that caches conversation history to avoid repeated processing, achieving 1.14-3.0x higher throughput and reduced latency compared to existing systems.

Large Language Models (LLMs) are wildly popular today and it is important to serve them efficiently. Existing LLM serving systems are stateless across requests. Consequently, when LLMs are used in the common setting of multi-turn conversations, a growing log of the conversation history must be processed alongside any request by the serving system at each turn, resulting in repeated processing. In this paper, we design $Pensieve$, a system optimized for multi-turn conversation LLM serving. $Pensieve$ maintains the conversation state across requests by caching previously processed history to avoid duplicate processing. $Pensieve$'s multi-tier caching strategy can utilize both GPU and CPU memory to efficiently store and retrieve cached data. $Pensieve$ also generalizes the recent PagedAttention kernel to support attention between multiple input tokens with a GPU cache spread over non-contiguous memory. Our evaluation shows that $Pensieve$ can achieve $1.14$-$3.0\times$ the throughput of vLLM and TensorRT-LLM and significantly reduce latency.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes