KV 캐시를 가상 메모리처럼 다루는 PagedAttention
SOSP 2023에 발표된 vLLM의 PagedAttention은 운영체제의 페이징 기법을 KV 캐시에 적용해 메모리 낭비를 거의 0으로 줄이고 동일한 지연 수준에서 처리량을 2배에서 4배 끌어올렸습니다. 같은 GPU로 몇 배의 동시 사용자를 감당하게 하므로 온프레미스 추론 서버의 하드웨어 투자 규모를 직접 좌우하는 기술입니다.
LLM 서빙 처리량은 GPU 연산력보다 KV 캐시 메모리 관리가 좌우한다는 사실을 정면으로 다룬 연구입니다. SOSP 2023에 발표된 이 논문은 오늘날 사실상 표준 서빙 엔진이 된 vLLM의 출발점이기도 합니다.
문제 배경
각 요청은 생성한 토큰의 키와 값을 KV 캐시로 GPU 메모리에 유지하는데, 이 캐시는 크기가 크고 생성이 진행되며 동적으로 늘었다 줄었다 합니다. 기존 시스템은 요청마다 최대 길이만큼 연속 메모리를 미리 할당했기 때문에 내부 단편화와 예약 낭비가 심했고, 이것이 배치 크기를 제한해 GPU 연산력을 놀리게 만들었습니다. 논문의 프로파일링에 따르면 기존 시스템에서 실제 토큰 상태 저장에 쓰인 KV 캐시 메모리는 20.4%에서 38.2%에 불과했습니다.
방법
PagedAttention은 운영체제의 가상 메모리와 페이징에서 착안했습니다. KV 캐시를 고정 크기 블록으로 나누어 비연속적으로 할당하고, 블록 테이블이 논리 블록과 물리 블록을 매핑합니다. 시퀀스가 실제로 길어지는 만큼만 메모리를 쓰므로 예약 낭비가 사라지고, 병렬 샘플링이나 빔 서치처럼 프리픽스를 공유하는 요청 간에는 같은 물리 블록을 참조해 중복 저장을 없앱니다. 이 알고리즘 위에 스케줄러와 분산 실행까지 갖춘 서빙 시스템으로 구현한 것이 vLLM입니다.

결과
vLLM은 KV 캐시 낭비를 거의 0으로 만들었고 FasterTransformer와 Orca 등 당시 최신 시스템 대비 같은 지연 수준에서 인기 LLM의 처리량을 2배에서 4배 개선했습니다. 논문에 따르면 시퀀스가 길수록, 모델이 클수록, 디코딩 알고리즘이 복잡할수록 개선 폭이 더 커집니다.
한계와 주의점
블록 단위 관리는 공짜가 아닙니다. 어텐션 커널이 블록 테이블을 따라가도록 다시 작성돼야 하고 블록 관리 자체의 오버헤드도 있습니다. 프리픽스 공유가 없는 짧은 단발 요청 위주의 워크로드라면 개선 폭은 논문 수치의 하단에 가까워집니다. 결국 자체 서빙 코드가 아니라 vLLM 같은 검증된 런타임을 채택하는 결정이 됩니다.
도입 검토 가이드
여러 사용자의 요청을 동시에 받는 LLM 추론 서버를 자체 장비로 운영하거나 신규 구축을 앞둔 조직에 해당합니다. 특히 자체 서빙 코드나 요청별 사전 할당 방식의 구형 프레임워크를 쓰고 있어 배치 크기가 GPU 메모리에 막혀 있다면 우선 검토 대상입니다.
| 구분 | 내용 |
|---|---|
| 검토 주체 | 서빙 인프라를 설계하는 ML 플랫폼팀, 하드웨어 견적을 산정하는 아키텍처 담당자 |
| 전제 조건 | vLLM 같은 PagedAttention 지원 런타임으로 전환할 수 있는 서빙 구조, 기존 자체 서빙 코드에 대한 교체 결정 |
| 첫 적용 지점 | 사내 문서 질의응답처럼 특정 시간대에 트래픽이 몰리는 내부 서비스, 신규 추론 서버의 기본 엔진 선정 |
| 판단 기준 | 동일 지연 수준에서의 처리량 변화(논문 기준 2배에서 4배), KV 캐시 실사용률(논문이 측정한 기존 시스템은 20.4%에서 38.2%) |
코텍시스는 하드웨어 견적 단계에서 PagedAttention 기반 서빙을 전제로 GPU 수량을 산정합니다. 같은 장비로 감당하는 동시 처리량이 도입 비용을 직접 좌우하기 때문입니다.
코텍시스 AI사업부는 sLLM 최적화, Advanced RAG, AI Agent 개발을 수행합니다. 이런 기법의 도입을 검토 중이라면 문의를 남겨주세요.
이 기술을 도입하려면: sLLM & SLM Optimization
AI 개발 문의기술 블로그 최신 글
AI 취약점 탐지 85% 시대의 보안 전제
Anthropic이 오픈소스 대상 무료 취약점 스캐너 OSS Scanner를 공개했습니다. 6개월간 29,000건의 취약점 후보와 패치 공개 한 시간 뒤 익스플로잇 같은 근거를 정리하고 기업이 패치 속도와 공격자 전제를 어떻게 다시 잡아야 하는지 짚습니다.
에이전트 권한 이탈 네 가지 패턴과 차단 설계
Anthropic이 평가와 사내 사용에서 Claude가 실제 시스템에 의도치 않게 행동한 네 가지 유형을 공개했습니다. 결함 악용, 양식 제출, 접근 제한 우회, URL 단축 사용 사례와 대응 조치를 사내 에이전트 설계 기준으로 정리했습니다.
보안 업무용 AI 접근 3단계와 심사 조건
Anthropic이 Cyber Verification Program을 세 단계 접근 등급으로 확장했습니다. 등급별 허용 범위와 데이터 보존 요건, 차단 성능 검증 결과를 정리해 보안팀이 확인할 조건을 짚습니다.
같은 주제의 다른 인사이트
SGLang: 구조화된 LLM 프로그램을 위한 서빙 시스템
SGLang은 다중 호출과 제어 흐름이 얽힌 LLM 프로그램을 위한 언어와 런타임을 함께 설계해 RadixAttention 기반 KV 캐시 재사용으로 기존 시스템 대비 최대 6.4배의 처리량을 달성했습니다. 에이전트 워크플로와 JSON 구조화 출력이 많은 기업 자동화 파이프라인일수록 이 캐시 재사용 효과가 비용 절감으로 직결됩니다.
토큰이 아니라 피처를 예측하는 EAGLE 추측 디코딩
EAGLE은 추측 디코딩의 초안 생성을 토큰 수준이 아닌 모델 내부 피처 수준에서 수행해 LLaMA2-Chat 70B 기준 2.7배에서 3.5배의 지연 시간 단축과 2배의 처리량 향상을 생성 분포 변화 없이 달성했습니다. 별도의 소형 초안 모델을 구하기 어려운 사내 특화 sLLM에도 가벼운 예측 헤드 하나로 적용할 수 있다는 점이 실무적 강점입니다.
Sarathi-Serve: 프리필을 쪼개 처리량과 지연을 함께 잡는 서빙
Sarathi-Serve는 프리필을 청크로 쪼개 디코드 배치의 빈 연산 슬롯에 끼워 넣는 무정지 스케줄링으로 처리량과 지연의 트레이드오프를 해소했고 vLLM 대비 Mistral-7B에서 2.6배, Falcon-180B에서 최대 5.6배의 서빙 용량을 달성했습니다. 같은 GPU로 SLA를 지키며 더 많은 동시 사용자를 받는다는 뜻이므로 온프레미스 서빙의 장비 산정 기준을 바꾸는 결과입니다.