CPU와 GPU를 활용한 하이브리드 LLM 서비스의 SLO 보장 및 처리량 향상
OmniServe는 CPU와 GPU를 동시에 활용해 지연 민감(LS) 서비스의 SLO를 유지하면서 베스트‑에포트(BE) 서비스의 처리량을 크게 높이는 시스템이다. 핵심은 BE 요청의 Attention 연산을 CPU에 오프로드하고, 비동기 스트림 동기화를 통해 GPU가 대기하지 않도록 하는 “Attention Piggybacking” 메커니즘과, 레이어별 배치를 이용한 동적 배치 제어 정책이다. 실험 결과, LS 서비스의 SLO 달성률이 최대 1…
저자: Zizhao Mo, Junlin Chen, Huanle Xu
본 논문은 데이터센터에서 다양한 LLM 서비스를 하나의 클러스터에 공동 배치할 때 발생하는 자원 간 간섭 문제를 해결하기 위해 설계된 새로운 서빙 시스템 OmniServe를 제안한다. 서비스 제공자는 지연 민감(LS) 서비스와 베스트‑에포트(BE) 서비스를 동시에 운영한다. LS 서비스는 사용자 응답 속도와 토큰 생성률에 대한 엄격한 SLO를 요구하고, BE 서비스는 메모리와 연산 자원을 최대한 활용해 처리량을 높이고자 한다. 기존 시스템(Llumnix 등)은 LS 서비스를 위한 KV 캐시 헤드룸을 고정적으로 예약해 GPU 메모리 사용을 제한함으로써 BE 서비스의 메모리 사용을 억제한다. 그러나 이러한 정적 메모리 할당은 (1) GPU SM·메모리 대역폭 경쟁으로 LS 서비스의 지연 변동성을 크게 만들고, (2) LS 트래픽 급증 시 BE 서비스가 거의 차단되는 비효율을 초래한다는 한계가 있다.
OmniServe는 이러한 한계를 극복하기 위해 두 가지 핵심 메커니즘을 도입한다. 첫 번째는 “Attention Piggybacking”이다. LLM 디코딩 단계에서 각 레이어는 (a) Dense 연산(MLP·Projection)과 (b) Attention 연산으로 구성된다. Dense 연산은 연산량이 많아 GPU에 최적화되어 있지만, Attention 연산은 상대적으로 연산량이 적고 메모리 접근이 주를 이루어 CPU에서도 충분히 처리 가능하다. OmniServe는 BE 요청의 Attention 연산을 CPU 코어에 실시간 오프로드하고, GPU는 Dense 연산만 수행하도록 설계한다. 이때 CPU와 GPU는 별도 CUDA 스트림과 CPU 스레드 풀을 사용해 비동기적으로 실행된다. GPU는 CPU가 Attention 결과를 반환하기를 기다리지 않고 바로 다음 레이어의 Dense 연산을 진행하므로, GPU가 대기 상태에 빠지는 것을 방지한다. 또한, BE 요청은 CPU DRAM에 큰 KV 캐시를 저장할 수 있어 GPU 메모리 압박을 크게 완화한다.
두 번째 메커니즘은 “동적 레이어‑와이즈 배치 제어”이다. 기존 연속 배치(continuous batching)는 토큰 단위로 배치 크기를 고정하거나 점진적으로 늘리지만, LS 서비스의 남은 지연 여유를 고려하지 않는다. OmniServe는 각 레이어 진입 시 LS 요청의 남은 SLO 여유시간을 정량화하고, 현재 CPU‑GPU 성능 차이와 메모리 사용량을 기반으로 BE 요청을 몇 개까지 추가로 “piggyback”할 수 있는지 계산한다. 이 과정은 레이어마다 독립적으로 수행되며, 따라서 BE 요청 수가 레이어마다 달라질 수 있다. 결과적으로 LS 서비스는 SLO를 초과하지 않으면서도, BE 서비스는 가능한 많은 토큰을 동시에 처리해 GPU 활용도를 높인다.
시스템 구현은 오픈소스 vLLM 프레임워크 위에 구축되었으며, 실험 환경은 4개의 NVIDIA A100 80 GB GPU와 4대의 Intel Xeon Gold 6342 CPU‑전용 노드로 구성했다. 테스트 모델은 Llama‑70B이며, LS 트래픽은 짧은 프리픽스와 높은 토큰 생성률을 요구하는 채팅 시나리오, BE 트래픽은 긴 컨텍스트와 낮은 우선순위의 배치 작업으로 설정했다. 실험 결과, OmniServe는 LS 서비스의 SLO 달성률을 기존 시스템 대비 최대 1.48배 향상시켰으며, BE 서비스의 토큰 처리량은 최대 9.85배 증가했다. 특히, LS 서비스의 per‑token latency 변동이 50 % 이하로 억제되어 사용자 경험이 크게 개선되었다.
논문은 또한 메모리 계층 구조를 상세히 분석한다. GPU HBM은 초고속 대역폭을 제공하지만 용량이 제한적이며, CPU DRAM은 용량이 풍부하지만 대역폭이 낮다. BE 요청이 CPU DRAM에 KV 캐시를 저장하고 Attention 연산을 CPU에서 수행함으로써, GPU HBM을 LS 서비스 전용으로 확보하고, 메모리 병목을 최소화한다. 이러한 설계는 기존의 “GPU 메모리 중심” 접근법과 달리, CPU와 GPU의 특성을 균형 있게 활용해 자원 효율성을 극대화한다.
결론적으로, OmniServe는 (1) CPU‑GPU 비동기 파이프라인을 통한 자원 격리, (2) 레이어‑별 동적 배치를 통한 미세한 SLO 제어, (3) 메모리 계층 특성을 활용한 KV 캐시 확장이라는 세 축으로 하이브리드 LLM 워크로드의 성능을 크게 개선한다. 향후 연구에서는 다중 노드 분산 환경에서의 확장성, 다양한 모델 아키텍처에 대한 적용 가능성, 그리고 스케줄러와의 통합을 통해 더욱 복잡한 서비스 레벨 목표를 지원하는 방향을 제시한다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기