TL;DR
NVIDIA Dynamo의 SLA Planner가 다음 구간의 부하를 예측해 prefill·decode worker 수를 정하는 구조에서, 작성자는 MAE가 아니라 GPU-hours와 SLO 위반률로 예측기를 비교하는 벤치마크를 만들었습니다. BurstGPT trace의 400개 구간에서 모든 예측기를 동일한 1.0% 위반 목표에 맞춰 provisioning headroom을 조정한 결과, TimesFM 3.0은 단순한 last-value 방식과 사실상 동률이었고 Chronos는 50% 더 많은 GPU-hours를 사용했습니다. 완벽한 one-step foresight는 last-value보다 50~58% 저렴했지만 여섯 예측기가 그 절감 여지를 포착하지 못해, 한 구간 앞 예측에서는 최근 관측값이 대부분의 신호를 이미 담고 인터페이스가 추가 개선 폭을 제한한다는 해석이 나왔습니다. 다만 단일 trace의 400개 구간, 20배로 확대한 요청률, 보정되지 않은 analytic simulator, 거친 headroom grid 때문에 절대 GPU-hours와 몇 퍼센트 차이의 해석에는 한계가 있습니다.
실용적 조언
- LLM serving autoscaling 예측기를 비교할 때는 MAE만 보지 말고 동일한 SLO 위반 목표를 맞춘 뒤 GPU-hours를 비교해야 합니다.
- 단일 trace와 소수 구간에서 발생한 몇 퍼센트 차이는 noise와 grid 오차를 함께 검토하고, 반복 trace와 실제 요청률 조건을 추가한 뒤 결론을 확장해야 합니다.
섹션별 상세
이미지 분석

이미지는 본문에서 만든 벤치마크 저장소의 이름과 평가 기준을 확인해 줍니다. 본문이 TimesFM 3.0과 Chronos 등을 비교한 근거 저장소라는 점과 연결되지만, 개별 실험 수치나 차트는 이미지에 표시되지 않았습니다.
GitHub 저장소 `pjdurden/planner-bench`의 화면으로, LLM serving autoscaling forecaster를 forecast error가 아닌 GPU-hours와 SLO violations로 평가한다는 설명이 보입니다.
용어 해설
- SLA 플래너(SLA Planner)
- — 서비스 부하를 예측해 다음 구간에 필요한 prefill worker와 decode worker 수를 결정하는 구성 요소입니다. 이 글의 Planner는 한 구간 앞의 부하를 숫자 하나로 예측하고, 그 결과를 GPU 프로비저닝 규모로 변환해 SLO 위반률과 비용을 함께 평가합니다.
- GPU 시간(GPU-hours)
- — GPU를 몇 시간 동안 사용했는지를 나타내는 자원 비용 지표입니다. 이 벤치마크에서는 예측 오차 대신 각 예측기가 동일한 1.0% SLO 위반 목표를 만족하는 최소 headroom을 찾은 뒤, 그 provisioning 규모를 GPU-hours로 환산해 비교합니다.
- SLO 위반(SLO violation)
- — 서비스가 정한 성능 목표를 지키지 못한 요청이나 구간의 비율입니다. 글에서는 GPU 비용을 낮추는 과정에서 SLO 위반률이 1.0%를 넘지 않도록 각 예측기의 headroom을 조정하고, 비용 비교의 공통 기준으로 사용합니다.
- 프로비저닝 여유분(provisioning headroom)
- — 예측된 부하보다 더 많은 worker나 GPU를 미리 배치하는 여유 자원입니다. 여유분이 작으면 GPU-hours는 줄지만 SLO 위반이 늘어나므로, 글은 예측기마다 동일한 위반 목표를 만족하는 가장 저렴한 지점을 찾아 공정성을 확보합니다.
- 점 추정치(point estimate)
- — 미래 값에 대한 불확실성 범위 없이 대표 숫자 하나만 출력하는 예측 방식입니다. NVIDIA Dynamo의 predictor 인터페이스는 다음 구간의 부하를 float 하나로 반환하므로, P90 같은 분위수 정보를 활용할 여지가 제한되고 예측기 선택의 비용 개선 폭도 줄어들 수 있습니다.
- P90 분위수(P90 quantile)
- — 관측값의 90%가 그 아래에 위치하는 수준을 뜻하는 분위수입니다. 이 글에서는 점 추정치 대신 P90 부하를 기준으로 worker를 배치하는 방식을 시험했지만, Chronos에는 도움이 되고 TimesFM에는 불리해 일관된 개선으로 이어지지 않았습니다.
코드 예제
def predict_next(self) -> float다음 구간의 부하를 불확실성 없이 숫자 하나로 반환하는 predictor 인터페이스입니다.
언급된 도구
SLA Planner를 통해 다음 구간의 부하에 맞는 prefill worker와 decode worker 수를 정하는 serving 시스템입니다.
다음 구간 부하를 예측하는 시계열 foundation model 후보입니다.
LLM serving autoscaling 부하 예측에 사용한 Apache-2.0 시계열 foundation model 후보입니다.
NVIDIA Dynamo에 기본 제공되는 부하 예측기입니다.
작성자의 ARIMA 비교 구현에서 매 호출마다 모델을 자동 선택하고 재적합하는 데 사용한 도구입니다.
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.