[논문 리뷰] Splitwise: Efficient generative LLM inference using phase splitting
Splitwise는 생성형 LLM 추론을 두 가지 별도 단계—계산 집약적인 프롬프트 처리와 메모리 집약적인 토큰 생성—로 나누어 전용 장비에 할당함으로써 처리량을 향상시키고 비용과 전력 소비를 줄이는 방식을 제안한다. 고대역폭 인터커넥트를 통해 상태 전달를 최적화함으로써, 기준 설계 대비 동일한 비용 및 전력 예산 내에서 최대 2.35배 높은 처리량을 달성한다.
Recent innovations in generative large language models (LLMs) have made their applications and use-cases ubiquitous. This has led to large-scale deployments of these models, using complex, expensive, and power-hungry AI accelerators, most commonly GPUs. These developments make LLM inference efficiency an important challenge. Based on our extensive characterization, we find that there are two main phases during an LLM inference request: a compute-intensive prompt computation, and a memory-intensive token generation, each with distinct latency, throughput, memory, and power characteristics. Despite state-of-the-art batching and scheduling, the token generation phase underutilizes compute resources. Specifically, unlike compute-intensive prompt computation phases, token generation phases do not require the compute capability of the latest GPUs, and can be run with lower power and cost. With Splitwise, we propose splitting the two phases of a LLM inference request on to separate machines. This allows us to use hardware that is well-suited for each phase, and provision resources independently per phase. However, splitting an inference request across machines requires state transfer from the machine running prompt computation over to the machine generating tokens. We implement and optimize this state transfer using the fast back-plane interconnects available in today's GPU clusters. We use the Splitwise technique to design LLM inference clusters using the same or different types of machines for the prompt computation and token generation phases. Our clusters are optimized for three key objectives: throughput, cost, and power. In particular, we show that we can achieve 1.4x higher throughput at 20% lower cost than current designs. Alternatively, we can achieve 2.35x more throughput with the same cost and power budgets.
연구 동기 및 목표
- 고성능 GPU에 동시에 프롬프트 계산과 토큰 생성을 배치하는 방식이 계산 자원의 낭비와 높은 비용을 유발하는 데 기인한 비효율성을 해결하기 위함.
- LLM 추론에서 계산 및 메모리 워크로드를 분리함으로써 각 단계에 대한 하드웨어 전문화를 탐색하기 위함.
- 단계별 하드웨어 할당과 저지연 상태 전달을 통해 처리량, 비용, 전력 효율을 최적화하기 위함.
- 현재 통합 GPU 기반 추론 클러스터보다 성능 대비 비용(Perf/$)과 성능 대비 전력 소비(Perf/W)에서 더 나은 성능을 달성할 수 있음을 입증하기 위함.
- 실제 생산 환경의 추론 트레이스를 활용해 다양한 워크로드, 모델 유형, 시스템 구성에서 접근 방식의 타당성을 검증하기 위함.
제안 방법
- Splitwise는 각 LLM 추론 요청을 두 단계로 나눈다: 병렬 처리, 계산 집약적인 프롬프트 계산과 순차적 처리, 메모리 제약이 있는 토큰 생성으로, 각각 별도의 머신에서 실행한다.
- 고속 인터커넥트(예: Infiniband)를 통해 프롬프트 머신에서 토큰 생성 머신으로 키-밸류(KV) 캐시를 블록 단위로 최적화해 전송함으로써 지연을 최소화한다.
- 시스템은 단계 요구 사항과 자원 가용성을 기반으로 요청을 적절한 하드웨어 풀에 동적으로 할당하는 혼합 풀 스케줄링 전략을 사용한다.
- 기존 GPU 클러스터 인터커넥트(예: Infiniband, RoCE)를 활용하며, 블록 크기를 줄이고 핵심 경로 지연을 최소화함으로써 데이터 전송을 최적화한다.
- 이 설계는 이질적 하드웨어를 지원한다: 프롬프트 단계에는 고성능 GPU(예: H100), 토큰 단계에는 고메모리 대역폭 장치(예: A100, MI-250, 또는 HBM 탑재 CPU)를 사용한다.
- 엄격한 서비스 수준 목표(SLO)를 충족시키는 조건에서 실제 LLM 추론 트레이스를 기반으로 처리량, 비용, 전력 최적화된 클러스터 구성이 평가된다.
실험 결과
연구 질문
- RQ1LLM 추론에서 프롬프트 계산과 토큰 생성 단계를 분리하면 전체 시스템의 처리량, 비용 효율성, 전력 효율성이 향상될 수 있는가?
- RQ2물리적으로 분리된 머신 간에 KV 캐시의 저지연·고대역폭 상태 전달을 어떻게 달성할 수 있으며, 이로 인해 종단 간 지연이 악화되지 않도록 할 수 있는가?
- RQ3계산 및 메모리 특성이 상이한 각 단계에 대해 최적의 하드웨어 구성은 무엇인가?
- RQ4워크로드, 모델 크기, 입력 토큰 분포가 다양할 경우 단계 분리가 성능에 어떤 영향을 미치는가?
- RQ5단계 분리로 인해 고비용 GPU의 과잉 할당을 얼마나 줄일 수 있으며, 엄격한 추론 SLO를 유지할 수 있는가?
주요 결과
- 동일한 하드웨어를 사용할 경우 Splitwise는 기준 설계 대비 20% 낮은 비용으로 1.4배 높은 처리량을 달성한다.
- 동일한 비용 및 전력 예산을 유지할 경우 Splitwise는 현재 추론 클러스터 대비 최대 2.35배 높은 처리량을 제공한다.
- 고대역폭 인터커넥트를 통해 작은 효율적인 데이터 블록으로 KV 캐시 전달를 최적화함으로써 종단 간 지연을 낮게 유지한다.
- H100을 프롬프트 단계, A100을 토큰 단계에 사용하는 최적화된 클러스터는 동일한 비용에서 15% 낮은 전력 소비로 1.76배 높은 처리량을 달성한다.
- 다양한 워크로드에서 안정적인 성능을 유지하며, CPU와 AMD MI-250 GPU를 포함한 이질적 하드웨어도 토큰 생성 단계에서 지원한다.
- 고부하 상황에서는 혼합 배치로 인해 Splitwise 클러스터가 기준 설계와 유사한 행동을 보이지만, 여전히 처리량 대비 비용(Throughput/$)과 처리량 대비 전력 소비(Throughput/W) 측면에서 기준 설계를 능가한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.