핵심 요약
LLM이 처리하는 문맥이 길어질수록 KV 캐시가 차지하는 메모리가 기하급수적으로 늘어나는 문제를 해결합니다. 의미론적 토큰 클러스터링을 통해 필요한 정보만 CPU에서 GPU로 빠르게 불러옴으로써, 저사양 하드웨어에서도 긴 문서 요약이나 복잡한 추론을 가능하게 합니다.
왜 중요한가
LLM이 처리하는 문맥이 길어질수록 KV 캐시가 차지하는 메모리가 기하급수적으로 늘어나는 문제를 해결합니다. 의미론적 토큰 클러스터링을 통해 필요한 정보만 CPU에서 GPU로 빠르게 불러옴으로써, 저사양 하드웨어에서도 긴 문서 요약이나 복잡한 추론을 가능하게 합니다.
핵심 기여
의미론적 토큰 클러스터링 기반의 KV 캐시 오프로딩
토큰을 생성 순서가 아닌 의미적 유사성에 따라 메모리 페이지에 그룹화하여, 쿼리와 관련된 토큰들이 동일한 페이지에 위치할 확률을 높이고 데이터 전송 효율을 극대화했다.
계층적 DCI-tree 데이터 구조 도입
다단계 동적 연속 인덱싱(M-DCI) 구조를 설계하여 수만 개의 토큰 중 쿼리에 가장 중요한 토큰이 포함된 페이지를 실시간으로 정밀하게 검색하고 업데이트할 수 있게 했다.
연산과 전송을 겹치는 파이프라이닝 설계
GPU의 프리필 연산과 CPU의 인덱싱 및 데이터 전송 과정을 병렬로 처리하는 파이프라이닝 기법을 통해 인덱싱에 따른 지연 시간을 효과적으로 숨겼다.
핵심 아이디어 이해하기
Transformer 모델의 Self-Attention은 이전의 모든 토큰 정보를 KV 캐시에 저장해야 하므로 시퀀스가 길어질수록 메모리 사용량이 선형적으로 증가한다. 기존 방식은 메모리 부족을 해결하기 위해 덜 중요한 토큰을 삭제하거나 단순히 생성 순서대로 CPU에 옮겼는데, 이는 나중에 중요한 토큰이 다시 필요할 때 정확도가 떨어지거나 전송 효율이 낮아지는 한계가 있었다.
IceCache는 토큰의 Embedding 벡터가 가진 의미적 유사성에 주목한다. 비슷한 의미를 가진 토큰들은 특정 쿼리에 대해 동시에 중요할 가능성이 높다는 점을 이용해, 이들을 하나의 메모리 페이지(PagedAttention 단위)로 묶어 관리한다. 이는 도서관에서 관련 서적을 같은 서가에 꽂아두어 한 번에 찾아오기 쉽게 만드는 것과 같은 원리이다.
결과적으로 쿼리가 들어왔을 때 관련 없는 토큰이 섞인 페이지를 여러 번 불러오는 대신, 핵심 토큰들이 밀집된 소수의 페이지 만을 GPU로 로드한다. 이를 통해 전체 KV 캐시의 극히 일부(예: 256개 토큰 분량)만 GPU에 유지하면서도 모델의 원래 성능을 거의 그대로 유지할 수 있게 된다.
방법론
IceCache의 워크플로우는 인덱싱, 페이지 선택, 벌크 로딩의 세 단계로 구성된다. 먼저 프리필 단계에서 각 토큰의 Key Embedding을 기반으로 계층적 트리 구조인 DCI-tree를 구축한다. 이때 임베딩 벡터 kj를 [kj/c, sqrt(1-||kj||²/c²)] 형태로 변환하여 내적(Inner Product) 연산을 유클리드 거리 기반의 근사 최근접 이웃(ANN) 검색으로 치환할 수 있도록 한다.
디코딩 단계에서는 현재 쿼리 q에 대해 M-DCI 알고리즘을 실행한다. 상위 레벨 노드에서 시작해 쿼리와 가장 유사한 k개의 토큰이 포함된 하위 페이지들을 독립적인 Attention Head별로 검색한다. [쿼리 벡터 입력 → 트리 검색 연산 → 상위 k개 페이지 식별] 과정을 통해 연산에 필요한 최소한의 데이터셋을 결정한다.
마지막으로 선택된 비연속적인 메모리 페이지들을 벌크 로딩(Bulk Loading) 기법으로 처리한다. CPU 백로드 버퍼에 흩어진 페이지들을 모아 하나의 연속된 덩어리로 만든 뒤 PCIe를 통해 GPU로 한 번에 전송한다. [비연속 페이지 수집 → 연속 버퍼 생성 → PCIe 전송 → GPU 캐시 테이블 배포] 순서로 진행하여 메모리 대역폭 활용도를 극대화한다.
관련 Figure

토큰들이 의미적 유사성에 따라 DCI-tree에 인덱싱되고, 쿼리(q)가 들어왔을 때 관련 있는 페이지들만 선택되어 Sparse Attention에 사용되는 과정을 시각화한다. 생성 순서가 아닌 의미 기반으로 페이지가 구성됨을 명확히 보여준다.
IceCache의 전체 아키텍처와 DCI-tree를 통한 토큰 클러스터링 및 페이지 선택 과정을 보여주는 다이어그램이다.
주요 결과
LongBench 벤치마크 실험 결과, IceCache는 256개의 토큰 예산만으로도 전체 KV 캐시를 사용한 모델 정확도의 99%를 유지했다. 특히 Llama-3.1-8B 모델에서 64개의 토큰만 사용했을 때 47.8%의 정확도를 기록하며, 4배 더 많은 예산을 사용한 기존 SOTA 모델인 PQCache(47.3%)를 능가하는 효율성을 보였다.
지연 시간 측면에서도 우수한 성능을 입증했다. 36k 시퀀스 길이에서 두 번째 토큰 생성 시간(TT2T)은 7.7초를 기록했으며, 페이지 재사용(Reuse) 기법을 적용할 경우 5.9초까지 단축되어 OmniKV와 대등한 수준의 속도를 확보했다. 이는 정확도를 희생하지 않으면서도 검색 기반 방식의 고질적인 지연 문제를 해결했음을 의미한다.
Passkey Retrieval 테스트에서는 10k에서 100k에 이르는 모든 문맥 길이와 삽입 위치에 관계없이 100%의 회수율을 달성했다. 또한 RULER 벤치마크를 통해 300k 이상의 초장기 문맥에서도 Full KV 모델 대비 디코딩 지연 시간 증가 폭이 현저히 낮음을 확인했다.
관련 Figure

IceCache가 PQCache나 ArkVale 같은 다른 검색 기반 방식보다 빠른 응답 속도를 보임을 입증한다. 특히 재사용(reuse) 기법을 적용했을 때 지연 시간이 크게 단축되어 효율성이 극대화됨을 확인할 수 있다.
다양한 KV 캐시 관리 기법들의 두 번째 토큰 생성 시간(TT2T)을 비교한 바 차트이다.

IceCache가 그래프의 좌상단(높은 정확도와 낮은 지연 시간)에 위치하여, 기존의 모든 오프로딩 및 검색 기반 방식들보다 우수한 성능 균형을 갖추고 있음을 시각적으로 증명한다.
토큰당 생성 시간(TPOT)과 정확도 사이의 트레이드오프를 보여주는 산점도이다.
기술 상세
IceCache 아키텍처의 핵심은 PagedAttention의 물리적 페이지 구조와 M-DCI(Multi-level Dynamic Continuous Indexing) 검색 알고리즘의 결합이다. 기존의 Quest나 ArkVale이 토큰 생성 순서대로 페이지를 구성하여 의미적 응집도가 낮았던 것과 달리, IceCache는 DCI-tree를 통해 의미론적으로 유사한 토큰들을 동일한 물리적 페이지에 강제로 할당한다.
수학적으로는 내적 최대화 문제를 ANN 검색으로 변환하기 위해 임베딩 정규화 기법을 사용한다. 모든 Key 벡터를 단위 구면 내부로 투영하고 추가 차원을 부여함으로써, 쿼리와의 내적이 클수록 변환된 공간에서의 유클리드 거리가 가까워지도록 설계했다. 이는 검색 정확도를 보장하면서도 연산 복잡도를 획기적으로 낮추는 기반이 된다.
구현 측면에서는 CPU와 GPU의 하드웨어 특성을 고려한 비동기 파이프라이닝이 돋보인다. GPU가 현재 레이어의 프리필 연산을 수행하는 동안, PCIe를 통해 이미 전송된 이전 레이어의 KV 데이터를 CPU가 인덱싱하도록 설계하여 전체 추론 파이프라인의 병목 현상을 제거했다. 또한 GQA(Group-Query Attention) 구조를 지원하여 여러 헤드가 페이지를 공유할 수 있도록 최적화되었다.
한계점
논문은 인덱싱 과정이 CPU 집약적인 작업이므로 CPU 스레드 수가 부족한 환경에서는 지연 시간이 발생할 수 있음을 언급한다. 또한 매우 짧은 시퀀스에서는 오프로딩과 검색에 따른 오버헤드가 이득보다 클 수 있다는 점이 한계로 작용할 수 있다.
실무 활용
제한된 GPU 메모리를 가진 환경에서 긴 문맥을 처리해야 하는 실무 환경에 즉시 적용 가능하다. 특히 RAG 시스템이나 긴 문서 분석 에이전트 구축 시 비용 효율성을 크게 높일 수 있다.
- 8GB~16GB VRAM을 가진 소비자용 GPU에서 수만 토큰 이상의 긴 문서 요약 서비스 운영
- 실시간 대화 기록이 누적되는 멀티턴 대화 에이전트의 메모리 관리 최적화
- 복잡한 Chain-of-Thought 추론이 필요한 법률/의료 문서 분석 시스템
코드 공개 여부: 공개
코드 저장소 보기키워드
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.