ChatPaper.aiChatPaper

Efficiënt Geheugenbeheer voor Large Language Model Serving met PagedAttention

Efficient Memory Management for Large Language Model Serving with PagedAttention

September 12, 2023
Auteurs: Woosuk Kwon, Zhuohan Li, Siyuan Zhuang, Ying Sheng, Lianmin Zheng, Cody Hao Yu, Joseph E. Gonzalez, Hao Zhang, Ion Stoica
cs.AI

Samenvatting

Het efficiënt verwerken van grote taalmodellen (LLMs) met een hoge doorvoersnelheid vereist het batchgewijs verwerken van voldoende veel verzoeken tegelijkertijd. Bestaande systemen hebben echter moeite omdat het geheugen voor de sleutel-waardecache (KV-cache) voor elk verzoek enorm is en dynamisch groeit en krimpt. Wanneer dit geheugen inefficiënt wordt beheerd, kan het aanzienlijk worden verspild door fragmentatie en redundante duplicatie, wat de batchgrootte beperkt. Om dit probleem aan te pakken, stellen we PagedAttention voor, een aandachtalgoritme geïnspireerd door de klassieke virtuele geheugen- en pagineringstechnieken in besturingssystemen. Hierop bouwen we vLLM, een LLM-verwerkingssysteem dat (1) bijna geen verspilling in het KV-cachegeheugen realiseert en (2) flexibele deling van de KV-cache binnen en tussen verzoeken mogelijk maakt om het geheugengebruik verder te verminderen. Onze evaluaties tonen aan dat vLLM de doorvoersnelheid van populaire LLMs met 2-4 keer verbetert bij hetzelfde latentieniveau in vergelijking met state-of-the-art systemen, zoals FasterTransformer en Orca. De verbetering is meer uitgesproken bij langere sequenties, grotere modellen en complexere decodeeralgoritmen. De broncode van vLLM is openbaar beschikbaar op https://github.com/vllm-project/vllm.
English
High throughput serving of large language models (LLMs) requires batching sufficiently many requests at a time. However, existing systems struggle because the key-value cache (KV cache) memory for each request is huge and grows and shrinks dynamically. When managed inefficiently, this memory can be significantly wasted by fragmentation and redundant duplication, limiting the batch size. To address this problem, we propose PagedAttention, an attention algorithm inspired by the classical virtual memory and paging techniques in operating systems. On top of it, we build vLLM, an LLM serving system that achieves (1) near-zero waste in KV cache memory and (2) flexible sharing of KV cache within and across requests to further reduce memory usage. Our evaluations show that vLLM improves the throughput of popular LLMs by 2-4times with the same level of latency compared to the state-of-the-art systems, such as FasterTransformer and Orca. The improvement is more pronounced with longer sequences, larger models, and more complex decoding algorithms. vLLM's source code is publicly available at https://github.com/vllm-project/vllm
PDF251December 15, 2024