[Paper] Beluga: 확장 가능하고 효율적인 LLM KVCache 관리를 위한 CXL 기반 메모리 아키텍처

발행: (2025년 11월 25일 오후 07:51 GMT+9)
8 min read
원문: arXiv

Source: arXiv - 2511.20172v1

개요

대형 언어 모델(LLM)은 점점 더 많은 파라미터 수에 도달하고 있으며, 긴 컨텍스트 윈도우로 서비스를 제공하면 GPU 메모리에 막대한 부담이 가해집니다. 이 논문은 Beluga라는 CXL 기반 메모리 아키텍처를 소개합니다. Beluga는 GPU와 CPU가 KV‑Cache(추론 시 attention key와 value를 저장하는 데이터 구조)를 위한 거대하고 저지연 메모리 풀을 공유하도록 합니다. RDMA 기반 분산 메모리에서 탈피함으로써 Beluga는 프로그래밍 모델을 단순하게 유지하면서도 로컬 메모리 수준의 속도를 제공합니다.

주요 기여

  • CXL 기반 공유 메모리 풀: GPU가 CXL 스위치를 통해 네이티브 load/store 연산을 수행할 수 있음을 보여주어 맞춤형 RDMA 프로토콜이 필요 없게 합니다.
  • CXL 스위치 설계 가이드라인: 상용 CXL 스위치 성능을 체계적으로 특성화하고, 확장 가능한 메모리 시스템 구축을 위한 실용적인 규칙을 도출합니다.
  • Beluga‑KVCache 시스템: 공유 풀을 활용하는 KV‑Cache 관리자를 구현하여, 인기 있는 vLLM 추론 엔진에서 TTFT(Time‑to‑First‑Token) 89.6 % 감소7.35배 높은 처리량을 달성합니다.
  • 프로토타입 및 평가: 기성 하드웨어로 작동하는 프로토타입을 구축하고, 최신 RDMA 솔루션 대비 지연시간/처리량 향상을 검증합니다.

방법론

  1. 하드웨어 플랫폼: 저자들은 GPU, CPU 및 대용량 DRAM 풀(수십 테라바이트)을 연결하는 상용 CXL 스위치로 구성된 테스트베드를 조립했습니다.
  2. 마이크로‑벤치마킹: 다양한 접근 패턴(랜덤 vs. 순차, 작은 전송 vs. 큰 전송)에서 CXL의 지연시간 및 대역폭을 이해하기 위해 벤치마크 스위트를 실행했습니다.
  3. 가이드라인 도출: 측정 결과를 바탕으로 “요청 크기를 256 KB 이상 유지해 스위치 오버헤드를 상쇄한다”, “KV‑Cache 업데이트를 배치 처리해 경쟁을 줄인다”, “자주 접근하는 페이지를 고정해 페이지 폴트 페널티를 피한다”와 같은 규칙을 만들었습니다.
  4. 시스템 설계: 이 가이드라인을 활용해 Beluga‑KVCache를 구축했습니다. 이 소프트웨어 레이어는 KV‑Cache 엔트리를 공유 CXL 메모리에 직접 매핑하고, 추론 엔진에 간단한 API를 제공합니다.
  5. 평가: Beluga‑KVCache를 고성능 LLM 서빙 프레임워크인 vLLM에 통합하고, 여러 모델 크기(7B‑65B)와 컨텍스트 길이(최대 32 K 토큰)에서 RDMA 기반 분산 메모리 베이스라인과 비교했습니다.

결과 및 발견

지표RDMA 베이스라인Beluga‑KVCache
TTFT (첫 토큰 지연시간)1.00 s (정규화)0.10 s (‑89.6 %)
처리량 (토큰/초)7.35×
평균 KV‑Cache 접근 지연시간~2.3 µs (네트워크 + CPU)~0.3 µs (거의 로컬)
확장성 (GPU 수)4 GPU 이후 감소(네트워크 포화)8 GPU까지 선형 확장(CXL 대역폭 충분)

데이터는 KV‑Cache를 CXL 기반 풀에 옮김으로써 핵심 경로 지연시간을 한 차례 정도 감소시키고, 특히 캐시가 메모리 트래픽을 지배하는 장기 컨텍스트 워크로드에서 토큰‑당 초당 처리율을 크게 향상시킨다는 것을 보여줍니다.

실용적 시사점

  • LLM SaaS 제공업체는 TTFT를 크게 줄여 요청당 추론 비용을 낮출 수 있으며, 이는 사용자 경험 향상과 클라우드 비용 절감으로 직결됩니다.
  • 하드웨어 설계자는 GPU 중심 AI 서버에 CXL 스위치를 통합하는 구체적인 레퍼런스 디자인을 얻어, HBM을 과다 프로비저닝하지 않고도 수 테라바이트 규모의 “GPU‑접근 가능” 메모리를 손쉽게 제공할 수 있습니다.
  • 프레임워크 개발자(예: PyTorch, TensorFlow, vLLM)는 Beluga‑KVCache API를 채택해 KV‑Cache 처리를 공유 풀에 오프로드함으로써 메모리 관리 코드를 단순화하고 맞춤형 RDMA 레이어 필요성을 감소시킬 수 있습니다.
  • 엣지 및 온프레미스 배포에서는 대용량 GPU 메모리를 확보하기 어려운 경우에도 소규모 CXL 메모리 모듈을 연결해 장기 컨텍스트 LLM을 서비스할 수 있어 기존 GPU 자산의 수명을 연장합니다.

제한 사항 및 향후 연구

  • 하드웨어 가용성: 프로토타입은 아직 초기 단계인 상용 CXL 스위치를 사용하므로, 생태계가 성숙할 때까지 광범위한 채택이 제한될 수 있습니다.
  • 캐시 일관성: 현재 설계는 KV‑Cache 세그먼트당 단일 라이터를 전제로 하며, 완전한 다중 라이터 시나리오를 지원하려면 추가 프로토콜 지원이 필요합니다.
  • 소프트웨어 통합 오버헤드: 논문은 vLLM에서 인상적인 성능 향상을 보였지만, 다른 프레임워크에 Beluga‑KVCache를 통합하려면 상당한 엔지니어링 작업이 요구될 수 있습니다.
  • 향후 방향: 저자들은 계층형 CXL 풀(예: 로컬 HBM, 로컬 DRAM, 원격 CXL 메모리 결합), KV‑Cache 엔트리의 적응형 배치 정책, 그리고 메모리 풀링 및 디바이스‑투‑디바이스 통신과 같은 CXL 2.0 기능과의 긴밀한 결합을 탐구할 것을 제안합니다.

저자

  • Xinjun Yang
  • Qingda Hu
  • Junru Li
  • Feifei Li
  • Yuqi Zhou
  • Yicong Zhu
  • Qiuru Lin
  • Jian Dai
  • Yang Kong
  • Jiayu Zhang
  • Guoqiang Xu
  • Qiang Liu

논문 정보

  • arXiv ID: 2511.20172v1
  • 분류: cs.DC, cs.AI
  • 발표일: 2025년 11월 25일
  • PDF: Download PDF
Back to Blog

관련 글

더 보기 »