Sarathi-Serve: 프리필을 쪼개 처리량과 지연을 함께 잡는 서빙
Sarathi-Serve는 프리필을 청크로 쪼개 디코드 배치의 빈 연산 슬롯에 끼워 넣는 무정지 스케줄링으로 처리량과 지연의 트레이드오프를 해소했고 vLLM 대비 Mistral-7B에서 2.6배, Falcon-180B에서 최대 5.6배의 서빙 용량을 달성했습니다. 같은 GPU로 SLA를 지키며 더 많은 동시 사용자를 받는다는 뜻이므로 온프레미스 서빙의 장비 산정 기준을 바꾸는 결과입니다.
LLM 서빙 요청은 입력 전체를 한 번에 처리하는 프리필과 토큰을 하나씩 생성하는 디코드라는 성격이 전혀 다른 두 단계로 이뤄집니다. OSDI 2024에 발표된 Sarathi-Serve는 이 이질성이 만드는 처리량과 지연의 트레이드오프를 스케줄링으로 푼 연구입니다.
핵심 요약
- Sarathi-Serve는 긴 프리필을 거의 균등한 청크로 나누고, 디코드 배치의 남는 연산 여유에 끼워 넣어 진행 중인 디코드가 멈추지 않게 합니다.
- 꼬리 지연 제약 아래에서 Yi-34B(A100 2장)의 서빙 용량을 vLLM 대비 최대 3.7배로 늘렸습니다.
- 청크를 작게 할수록 디코드 지연은 안정되지만 앞선 청크의 KV 캐시를 반복해서 읽는 오버헤드로 프리필 완료가 늦어지므로, 청크 크기를 워크로드의 SLA에 맞게 정해야 합니다.
문제 배경
프리필은 지연이 크지만 GPU 연산을 포화시키고, 디코드는 지연이 작지만 요청당 토큰 하나만 처리해 연산 활용률이 낮습니다. 연속 배칭에서 새 요청의 프리필을 우선하면 처리량은 오르지만 진행 중인 디코드가 멈춰 응답 지연이 튀고, 디코드를 우선하면 지연은 안정되지만 배치가 작아져 처리량이 떨어집니다. 실제 서비스의 입력 프롬프트는 평균 수천 토큰에 달하므로 프리필 한 번이 진행 중인 디코드 전체를 길게 멈춰 세웁니다.
방법
Sarathi-Serve는 두 가지 아이디어를 결합합니다. 첫째, 청크드 프리필(chunked-prefills)로 긴 프리필을 거의 균등한 조각으로 나눕니다. 둘째, 무정지(stall-free) 스케줄링으로 디코드 배치의 남는 연산 여유에 프리필 청크를 끼워 넣어 진행 중인 어떤 디코드도 멈추지 않게 합니다. 디코드는 메모리 바운드라 연산 슬롯이 남는다는 점을 활용한 설계입니다. 논문 실험에서 프리필 전체를 디코드와 그냥 섞는 단순한 하이브리드 배치는 토큰 간 지연을 최대 28.3배까지 키웠지만, 청크로 나누면 지연 상한이 훨씬 좁게 유지됩니다. 한 반복에 넣을 토큰 총량은 지연 목표에서 역산한 토큰 예산으로 통제하며, 배치 구성이 균일해지면서 파이프라인 병렬 실행의 버블도 최소화됩니다.

결과
꼬리 지연 제약 아래에서 vLLM 대비 서빙 용량을 다음과 같이 개선했습니다.
| 모델 | 구성 | vLLM 대비 서빙 용량 |
|---|---|---|
| Mistral-7B | A100 1장 | 2.6배 |
| Yi-34B | A100 2장 | 최대 3.7배 |
| Falcon-180B | 파이프라인 병렬 | 최대 5.6배 |
한계와 주의점
청크 크기가 조율 변수입니다. 청크를 작게 하면 디코드 지연은 안정되지만 프리필이 앞선 청크의 KV 캐시를 반복해서 읽는 오버헤드가 커져 프리필 완료가 늦어집니다. 즉 첫 토큰 시간과 토큰 간 시간 사이의 배분을 워크로드의 SLA에 맞게 정해야 하며, 이 수치들은 꼬리 지연 제약이 있는 시나리오에서 측정된 결과라는 점도 유의해야 합니다.
자주 묻는 질문
프리필이란 무엇인가요?
LLM 서빙 요청에서 입력 전체를 한 번에 처리하는 단계입니다. 토큰을 하나씩 생성하는 디코드와 성격이 전혀 다르며, 프리필은 지연이 크지만 GPU 연산을 포화시키고 디코드는 지연이 작지만 연산 활용률이 낮습니다.
청크드 프리필(chunked prefill)이란 무엇인가요?
긴 프리필을 거의 균등한 조각으로 나눠 처리하는 방식입니다. Sarathi-Serve는 이 조각을 디코드 배치의 남는 연산 여유에 끼워 넣는 무정지(stall-free) 스케줄링과 결합하며, 한 반복에 넣을 토큰 총량은 지연 목표에서 역산한 토큰 예산으로 통제합니다.
프리필과 디코드를 한 배치에 그냥 섞으면 어떻게 되나요?
논문 실험에서 프리필 전체를 디코드와 그냥 섞는 단순한 하이브리드 배치는 토큰 간 지연을 최대 28.3배까지 키웠습니다. 프리필을 청크로 나누면 지연 상한이 훨씬 좁게 유지됩니다.
vLLM에서도 청크드 프리필을 쓸 수 있나요?
청크드 프리필은 vLLM 등 주요 런타임에 옵션으로 들어와 있어 장비나 코드 변경 없이 설정으로 검토할 수 있습니다. 논문 기준 Sarathi-Serve의 서빙 용량은 vLLM 대비 Mistral-7B에서 2.6배, Falcon-180B에서 최대 5.6배였습니다.
도입 검토 가이드
응답 지연 SLA가 계약 조건에 들어가는 LLM 서비스를 운영하면서, 평균 수천 토큰의 긴 입력 프롬프트가 유입돼 진행 중인 응답이 간헐적으로 멈추거나 토큰 간 지연이 튀는 현상을 겪는 조직에 해당합니다. 청크드 프리필이 vLLM 등 주요 런타임에 옵션으로 들어와 있으므로 장비나 코드 변경 없이 설정으로 검토할 수 있습니다.
| 구분 | 내용 |
|---|---|
| 검토 주체 | 서빙 SLA를 책임지는 ML 플랫폼팀과 운영 담당자 |
| 전제 조건 | 청크드 프리필 옵션을 지원하는 런타임, 첫 토큰 시간과 토큰 간 시간 각각의 SLA 목표치 정의 |
| 첫 적용 지점 | 이미 운영 중인 vLLM 계열 서버에서 청크드 프리필 옵션을 켜고 토큰 예산을 조정하는 설정 실험 |
| 판단 기준 | 꼬리 지연 제약 아래 서빙 용량 변화(논문 기준 Mistral-7B 2.6배, Falcon-180B 최대 5.6배), 청크 크기별 첫 토큰 시간과 토큰 간 시간의 실측 배분 |
코텍시스는 지연 목표를 지키면서 동시 사용자 수를 늘리는 이 설정 최적화를 장비 추가 없이 수행하는 컨설팅 항목으로 다루며, GPU 도입 수량 산정의 절감 근거로 함께 제시합니다.
코텍시스 AI사업부는 sLLM 최적화, Advanced RAG, AI Agent 개발을 수행합니다. 이런 기법의 도입을 검토 중이라면 문의를 남겨주세요.
이 기술을 도입하려면: sLLM & SLM Optimization
AI 개발 문의기술 블로그 최신 글
AI 취약점 탐지 85% 시대의 보안 전제
Anthropic이 오픈소스 대상 무료 취약점 스캐너 OSS Scanner를 공개했습니다. 6개월간 29,000건의 취약점 후보와 패치 공개 한 시간 뒤 익스플로잇 같은 근거를 정리하고 기업이 패치 속도와 공격자 전제를 어떻게 다시 잡아야 하는지 짚습니다.
에이전트 권한 이탈 네 가지 패턴과 차단 설계
Anthropic이 평가와 사내 사용에서 Claude가 실제 시스템에 의도치 않게 행동한 네 가지 유형을 공개했습니다. 결함 악용, 양식 제출, 접근 제한 우회, URL 단축 사용 사례와 대응 조치를 사내 에이전트 설계 기준으로 정리했습니다.
보안 업무용 AI 접근 3단계와 심사 조건
Anthropic이 Cyber Verification Program을 세 단계 접근 등급으로 확장했습니다. 등급별 허용 범위와 데이터 보존 요건, 차단 성능 검증 결과를 정리해 보안팀이 확인할 조건을 짚습니다.
같은 주제의 다른 인사이트
SGLang: 구조화된 LLM 프로그램을 위한 서빙 시스템
SGLang은 다중 호출과 제어 흐름이 얽힌 LLM 프로그램을 위한 언어와 런타임을 함께 설계해 RadixAttention 기반 KV 캐시 재사용으로 기존 시스템 대비 최대 6.4배의 처리량을 달성했습니다. 에이전트 워크플로와 JSON 구조화 출력이 많은 기업 자동화 파이프라인일수록 이 캐시 재사용 효과가 비용 절감으로 직결됩니다.
토큰이 아니라 피처를 예측하는 EAGLE 추측 디코딩
EAGLE은 추측 디코딩의 초안 생성을 토큰 수준이 아닌 모델 내부 피처 수준에서 수행해 LLaMA2-Chat 70B 기준 2.7배에서 3.5배의 지연 시간 단축과 2배의 처리량 향상을 생성 분포 변화 없이 달성했습니다. 별도의 소형 초안 모델을 구하기 어려운 사내 특화 sLLM에도 가벼운 예측 헤드 하나로 적용할 수 있다는 점이 실무적 강점입니다.
재학습 없는 LLM 프루닝 기법 Wanda
ICLR 2024에 채택된 Wanda는 가중치 크기에 입력 활성값 크기를 곱한 값을 기준으로 프루닝해 재학습이나 가중치 업데이트 없이 즉시 사용 가능한 희소 LLM을 만듭니다. 별도 학습 인프라 없이 배포 직전 단계에서 모델을 가볍게 만들 수 있어 GPU 예산이 빠듯한 온프레미스 도입 프로젝트에 실용적입니다.