37 lines
2.5 KiB
Markdown
37 lines
2.5 KiB
Markdown
---
|
|
id: [[P-Reinforce|P-Reinforce]]-AUTO-PATT-001
|
|
category: Unified
|
|
confidence_score: 1.00
|
|
tags: [auto-reinforced, paged-attention, vllm, kv-cache, memory-management, fragmentation]
|
|
last_reinforced: 2026-05-04
|
|
---
|
|
|
|
# [[PagedAttention|PagedAttention]]
|
|
|
|
## 📌 한 줄 통찰 (The Karpathy Summary)
|
|
> "OS의 지혜를 AI로: 운영체제의 가상 메모리 페이징 기법을 KV 캐시 관리에 도입하여, 메모리 단편화를 제거하고 활용률을 96% 이상으로 끌어올린 추론 엔진의 혁명."
|
|
|
|
## 📖 구조화된 지식 (Synthesized Content)
|
|
PagedAttention은 LLM 추론 시 KV 캐시 메모리를 효율적으로 관리하기 위해 제안된 기술로, 연속적인 메모리 할당 대신 비연속적인 블록(Block) 단위 할당 방식을 사용합니다.
|
|
|
|
1. **핵심 메커니즘**:
|
|
* **가상 메모리 페이징**: KV 캐시를 고정된 크기의 '논리적 블록'으로 나누고, 이를 실제 '물리적 블록'에 동적으로 매핑합니다.
|
|
* **블록 테이블 (Block Table)**: 논리적 블록과 물리적 블록 사이의 매핑 정보를 저장하여, 데이터가 물리적으로 떨어져 있어도 논리적으로는 연속된 것처럼 처리합니다.
|
|
2. **주요 장점**:
|
|
* **단편화 제거**: 미리 거대한 공간을 예약할 필요가 없어 내부 단편화가 거의 발생하지 않으며, 메모리 활용률을 극대화합니다.
|
|
* **메모리 공유**: 동일한 프롬프트를 공유하는 여러 요청(예: Parallel Sampling)이 있을 때, 공통된 KV 블록을 물리적으로 한 번만 저장하고 공유할 수 있습니다 (Copy-on-Write 방식).
|
|
3. **성능 향상**:
|
|
* 메모리 효율성 증가는 곧 동일한 GPU 자원에서 훨씬 더 많은 동시 요청(Throughput)을 처리할 수 있음을 의미합니다.
|
|
|
|
## ⚖️ Trade-offs & Caveats
|
|
* **복잡한 커널 구현**: 비연속적인 메모리 블록을 빠르게 읽고 쓰는 전용 CUDA 커널이 필요하여 구현 난이도가 높습니다.
|
|
* **블록 크기 민감도**: 블록 크기(예: 8, 16 토큰) 설정에 따라 GPU 병렬 처리 효율성과 메타데이터 오버헤드 사이의 트레이드오프가 발생합니다.
|
|
|
|
## 🔗 지식 연결 (Graph)
|
|
* **상위 개념**: [[Key-Value (KV) Cache|Key-Value (KV) Cache]], [[Virtual Memory Paging|Virtual Memory Paging]]
|
|
* **대표 프레임워크**: [[vLLM|vLLM]], [[TensorRT-LLM|TensorRT-LLM]]
|
|
* **연관 기술**: [[KV Cache Compression|KV Cache Compression]], [[ThinKV|ThinKV]]
|
|
|
|
---
|
|
*Last updated: 2026-05-04*
|