ChatPaper.aiChatPaper

Effizientes Speichermanagement für das Serving großer Sprachmodelle mit PagedAttention

Efficient Memory Management for Large Language Model Serving with PagedAttention

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

Zusammenfassung

Die effiziente Bereitstellung von großen Sprachmodellen (LLMs) mit hohem Durchsatz erfordert das Bündeln einer ausreichenden Anzahl von Anfragen gleichzeitig. Bestehende Systeme stoßen jedoch an Grenzen, da der Speicher für den Schlüssel-Wert-Cache (KV-Cache) für jede Anfrage enorm ist und sich dynamisch vergrößert und verkleinert. Bei ineffizienter Verwaltung kann dieser Speicher durch Fragmentierung und redundante Duplizierung erheblich verschwendet werden, was die Batch-Größe begrenzt. Um dieses Problem zu lösen, schlagen wir PagedAttention vor, einen Aufmerksamkeitsalgorithmus, der von den klassischen Techniken des virtuellen Speichers und der Speicherverwaltung in Betriebssystemen inspiriert ist. Darauf aufbauend entwickeln wir vLLM, ein LLM-Bereitstellungssystem, das (1) nahezu keinen Abfall im KV-Cache-Speicher verursacht und (2) eine flexible Freigabe des KV-Caches innerhalb und über Anfragen hinweg ermöglicht, um den Speicherverbrauch weiter zu reduzieren. Unsere Auswertungen zeigen, dass vLLM den Durchsatz beliebter LLMs im Vergleich zu modernsten Systemen wie FasterTransformer und Orca bei gleicher Latenz um das 2- bis 4-fache steigert. Die Verbesserung ist bei längeren Sequenzen, größeren Modellen und komplexeren Dekodierungsalgorithmen noch deutlicher. Der Quellcode von vLLM ist öffentlich unter https://github.com/vllm-project/vllm verfügbar.
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