Back to Headlines

초대용량 LLM 추론 효율화: CPU-GPU 통합 메모리로 KV 캐시 오프로드 구현

16일 전

대규모 언어모델(LLM)의 추론 효율성을 높이기 위해 CPU와 GPU 간 메모리 공유 기술이 주목받고 있다. Llama 3 70B와 Llama 4 Scout 109B 같은 대규모 모델은 반정밀도(FP16)로 로드 시 각각 약 140GB, 218GB의 메모리가 필요하며, 특히 KV 캐시는 컨텍스트 길이와 배치 크기에 따라 선형 증가한다. 예를 들어 128K 토큰 길이의 캐시는 단일 사용자 기준 약 40GB를 차지해 GPU의 96GB 메모리로는 부족해 메모리 초과(OOM) 오류가 발생한다. 이 문제를 해결하기 위해 NVIDIA의 Grace Hopper 및 Grace Blackwell 아키텍처는 NVLink-C2C 기술을 통해 CPU와 GPU를 900GB/s의 고대역폭으로 연결하고, 메모리 일관성(메모리 공유)을 제공한다. 이로 인해 CPU의 480GB LPDDR 메모리와 GPU의 96GB 메모리가 하나의 통합 메모리 주소 공간으로 작동해, 모델 파라미터와 KV 캐시를 자동으로 공유할 수 있다. 실제로 GH200 슈퍼칩 환경에서 RAPIDS 메모리 매니저(RMM)를 활용해 관리 메모리 할당을 활성화하면, PyTorch가 GPU와 CPU 메모리를 통합해 사용할 수 있다. 이를 통해 Llama 3 70B 모델을 GPU에 로드할 때 OOM 오류 없이 성공적으로 실행 가능하다. 코드에서는 rmm.reinitialize(managed_memory=True)와 torch.cuda.memory.change_current_allocator(rmm_torch_allocator)를 설정해 메모리 관리를 통합하고, 텍스트 생성 파이프라인을 통해 질문에 대한 응답을 생성할 수 있다. 결론적으로, CPU-GPU 메모리 공유 기술은 모델 크기 증가에 따른 메모리 한계를 극복하고, 대규모 LLM의 추론과 훈련을 보다 효율적으로 가능하게 한다. 이는 미래의 AI 하드웨어 설계와 소프트웨어 최적화의 핵심 방향이다.

Related Links

초대용량 LLM 추론 효율화: CPU-GPU 통합 메모리로 KV 캐시 오프로드 구현 | 헤드라인 | HyperAI초신경