본문으로 이동

CXL 메모리 풀링을 통한 AI 메모리 확장 한계 해결

LLM 추론을 위한 KV Cache 용량 확장과 DRAM 수준의 응용 성능 구현

  • 메일

CXL 메모리 풀링(Pooling)을 통한 KV Cache 확장 문제 해결

생성형 AI 도입이 빠르게 확대되면서 AI 인프라의 관심은 학습(Training) 성능을 넘어 추론(Inference) 성능으로 이동하고 있습니다. 특히 대규모 언어 모델(LLM)을 실제 서비스 환경에 배포하는 기업에게는 추론 효율성과 확장성이 AI 서비스를 빠르고 경제적으로 제공하기 위한 핵심 요소가 되었습니다.

이 과정에서 새롭게 떠오르는 과제 중 하나가 KV Cache(Key-Value Cache) 요구량의 급격한 증가입니다. 컨텍스트 길이(Context Length)가 길어지고 동시 사용자 수가 증가함에 따라, KV Cache 크기도 빠르게 증가합니다. 이에 따라 필요한 메모리 용량이 GPU 메모리와 시스템 DRAM의 가용 용량을 초과할 수 있으며, 이는 AI 추론 인프라의 새로운 병목으로 이어질 수 있습니다.

삼성전자는 이러한 과제에 대응하기 위해 CXL 기반 메모리 풀링 기술을 활용한 KV Cache 오프로딩이 성능에 미치는 영향을 분석했습니다. 이를 통해 메모리 용량의 확장성을 확보하는 동시에 기존 DRAM에 근접한 애플리케이션 성능을 제공할 수 있는지를 검증했습니다.

 

LLM 추론 과정에서 Prefill 단계와 Decode 단계의 KV Cache 활용 흐름을 보여주는 구성도
Figure 1. LLM inference flow with KV cache
LLM 추론 과정에서 Prefill 단계와 Decode 단계의 KV Cache 활용 흐름을 보여주는 구성도
Figure 1. LLM inference flow with KV cache

 

KV Cache가 중요한 이유

LLM은 추론 과정에서 이전에 계산한 어텐션(attention)의 키(Key)와 값(Value)을 KV Cache에 저장합니다. 모델은 저장된 정보를 재사용하기 때문에 새로운 토큰을 생성할 때마다 동일한 연산을 반복할 필요가 없습니다. 그 결과 추론 지연 시간을 줄이고 연산 오버헤드도 크게 낮출 수 있습니다.

하지만 모델 규모의 확장, 컨텍스트 길이와 동시 사용자 수까지 증가하면서 KV Cache에 필요한 메모리는 수백 GB 규모까지 늘어날 수 있습니다. SSD나 네트워크 기반 메모리를 활용한 기존 오프로딩 방식은 메모리 부족 문제를 완화할 수 있지만, 추가적인 지연 시간과 대역폭 오버헤드를 유발하는 경우가 많습니다.

 

CXL 메모리 풀링이 제공하는 가능성

CXL(Compute Express Link)은 차세대 데이터센터 아키텍처를 구현하기 위한 핵심 기술로 주목받고 있습니다. CXL은 높은 대역폭과 메모리 일관성(Coherency)을 제공하는 인터커넥트(Interconnect)를 통해 시스템의 메모리를 확장할 수 있도록 지원합니다. 이를 통해 기존 DRAM 구성의 물리적 한계를 넘어서는 대규모 메모리 구성이 가능해집니다.

특히 CXL 스위치를 활용하면 여러 메모리 장치를 하나의 공유 메모리 풀로 통합할 수 있습니다. 이를 통해 필요에 따라 메모리를 유연하게 할당할 수 있으며, 전체 메모리 용량도 크게 확장할 수 있습니다.

삼성전자의 CMM-D(CXL Memory Module-DRAM)는 이러한 메모리 확장 아키텍처를 구현하기 위해 설계된 솔루션이며, 특히 AI 추론과 같이 대용량 메모리를 필요로 하고 안정적인 응용 성능이 요구되는 워크로드에 효과적인 대안이 될 수 있습니다.

 

AI 추론 환경에서 CXL 메모리 평가

평가 환경은 NVIDIA RTX PRO 6000 Blackwell 기반 GPU 서버, CXL 스위치에 연결된 삼성전자의 CMM-D 모듈, 그리고 이를 기반으로 구성한 1TB 규모의 CXL 메모리 풀로 구성했습니다. 또한 vLLM1과 LMCache2 소프트웨어 스택을 적용하고, 삼성전자의 호스트 수준 최적화 기법도 함께 활용했습니다.

"CXL 메모리 풀이 대규모 KV Cache 오프로딩을 가능하게 하면서도 DRAM과 유사한 수준의 성능을 제공할 수 있는가?"

 

CXL 스위치를 통해 GPU 서버와 Samsung CMM-D MD220 메모리 모듈을 연결한 CXL 메모리 풀링 구성도
Figure 2. System block diagram of the evaluation environment
CXL 스위치를 통해 GPU 서버와 Samsung CMM-D MD220 메모리 모듈을 연결한 CXL 메모리 풀링 구성도
Figure 2. System block diagram of the evaluation environment

 

더 큰 규모에서 구현한 DRAM급 성능

평가 결과, CXL 메모리 풀링은 AI 추론 워크로드에서 DRAM에 근접한 성능과 높은 메모리 확장성을 동시에 제공하는 것으로 나타났습니다.

단일 GPU 환경에서 호스트 레벨 최적화 기법을 적용하여 CXL 메모리 풀을 LMCache 백엔드로 구성했을 때 DRAM과 유사한 수준의 성능을 보였습니다. 또한 8개의 GPU를 사용하는 다중 GPU 환경에서도 DRAM 대비 약 92% 수준의 성능을 유지했으며, 동시에 훨씬 더 큰 메모리 용량을 제공할 수 있었습니다.

또한 512GB DRAM과 1TB CXL 메모리 풀 구성 간 KV Cache 요구량 증가에 따른 성능 변화도 비교 분석했습니다. 512GB DRAM 구성에서는 KV Cache 요구량이 가용 메모리 용량을 초과하면서 캐시 재계산 오버헤드가 발생하여 성능이 저하되었습니다. 반면, 1TB CXL 메모리 풀 구성은 더 큰 KV Cache 요구량를 지원하면서도 안정적인 성능을 유지했습니다.

 

AI 인프라를 위한 메모리 풀링의 미래

이번 평가 결과, CXL 기반 메모리 풀링은 KV Cache 오프로딩 환경에서 대규모 메모리 확장성과 DRAM에 근접한 성능을 동시에 제공할 수 있음을 보여주었습니다.

CXL 생태계의 발전과 함께 메모리 풀링 아키텍처는 미래 AI 데이터센터의 핵심 구성 요소로 자리 잡을 것으로 예상됩니다. 이를 통해 기업은 유연성, 확장성, 효율성을 갖춘 메모리 기반 AI 인프라를 구축할 수 있을 것으로 기대됩니다.

더 알아보기

시스템 구성, 최적화 기법 및 종합적인 벤치마크 결과를 확인하려면 아래 백서[1]를 다운로드하여 참고하시기 바랍니다. 다운로드

 


 
References
 
[1] White Paper: Optimizing KV Cache Offloading to CMM-D in a CXL Switch-based Memory Pool
 
본 백서는 CXL 메모리 풀링 기반 KV Cache 오프로딩에 대한 상세한 벤치마크 결과와 시스템 최적화 기법, 성능 분석을 제공합니다. 또한 확장 가능한 메모리 기반 AI 추론 환경을 위한 아키텍처와 평가 방법론을 제시합니다.
 

1 vLLM은 GPU 메모리를 효율적으로 활용하여 LLM 추론의 처리량을 높이는 오픈소스 추론 엔진입니다.
 
2 LMCache는 LLM의 KV Cache를 GPU, CPU, CXL 메모리 및 SSD 등 다양한 메모리 계층에 저장하고 재사용할 수 있도록 지원하는 오픈소스 프레임워크입니다.
 

* 본 페이지의 내용은 정보 제공만을 목적으로 합니다. 삼성 및 그 임원, 자문인, 대리인 또는 직원은 본 페이지에 포함된 정보, 진술, 의견 또는 기타 내용의 정확성, 합리성 또는 완전성에 대하여 명시적 또는 묵시적으로 어떠한 진술이나 보증도 하지 않으며, 해당 내용은 "있는 그대로(AS IS)" 제공됩니다. 삼성은 본 블로그 내용의 사용으로 인해 발생하거나 이와 관련하여 발생하는 어떠한 손해에 대해서도 책임을 지지 않습니다. 본 블로그의 어떠한 내용도 본 문서에 제공된 정보, 자료 또는 콘텐츠나 기타 지식재산에 대한 라이선스 또는 권리를 부여하는 것으로 해석되지 않습니다.
 
* 본 블로그의 내용에는 향후 전망과 관련된 대한 내용이 포함될 수 있습니다. 이러한 내용은 향후 성과를 보장하지 않으며, 삼성전자, 시장 또는 산업의 실제 전개는 본문에 포함된 내용과 실질적으로 다를 수 있습니다.
 
* 본 문서에 포함된 모든 제품 사양 및 성능 데이터는 내부 테스트 결과를 기반으로 하며, 사용자 시스템 구성에 따라 달라질 수 있습니다. 실제 성능은 사용 환경 및 조건에 따라 차이가 발생할 수 있습니다.
 
* 본 문서에 포함된 모든 이미지는 이해를 돕기 위한 예시이며 실제 제품과 다를 수 있습니다.
 
* Compute Express Link®(CXL®)는 Compute Express Link Consortium의 등록상표입니다.
 
* PCI Express® 및 PCIe®는PCI-SIG의 등록상표입니다.
 
* NVIDIA, Blackwell 및 RTX는 미국 및/또는 기타 국가에서 NVIDIA Corporation의 상표 또는 등록상표입니다.