FlowPrefill, LLM 서빙 속도 5.6배 향상시킨다
- •FlowPrefill은 선점 방식과 스케줄링 주기를 분리하여 LLM 서빙 시 발생하는 Head-of-Line Blocking 현상을 획기적으로 완화한다.
- •효율성 저하 없이 수학적 연산 단위에서 작업을 일시 중단할 수 있는 연산자 수준 선점 기술을 새롭게 도입했다.
- •성능 측정 결과, 기존 최첨단 서빙 프레임워크와 비교해 유효 처리량인 Goodput이 5.6배 증가한 것으로 확인됐다.
거대언어모델(LLM) 서빙 분야는 흔히 Head-of-Line Blocking이라 불리는 고질적인 교통 체증 문제에 직면해 있다. 사용자가 방대한 프롬프트를 입력하면, 시스템의 초기 처리 단계인 '프리필(prefill)' 과정이 하드웨어 자원을 독점하게 되어 후속 사용자들의 요청이 무기한 대기하는 현상이 발생한다. 이러한 지연은 즉각적인 응답이 필수적인 애플리케이션에서 치명적이며, 단 몇 밀리초의 지연만으로도 서비스 수준 목표(SLO)를 위반하고 사용자 경험을 크게 저해할 수 있다.
기존의 '청크 단위 프리필' 방식은 대규모 작업을 작은 조각으로 나누어 해결하려 했으나, 일종의 진퇴양난에 빠지는 한계가 있었다. 조각을 작게 나누면 응답성은 좋아지지만 연산 오버헤드로 인해 전체 처리 속도가 느려지고, 조각을 크게 유지하면 속도는 보존되지만 새로운 요청이 심하게 차단되기 때문이다. 이에 치아치 시에(Chia-chi Hsieh) 연구원 등이 제안한 FlowPrefill은 임의의 시간 간격이나 고정된 크기 대신, 특정 수학적 연산의 경계에서 작업을 일시 중단할 수 있는 연산자 수준 선점 기술을 통해 이 굴레를 끊어냈다.
특히 FlowPrefill은 이러한 세밀한 중단 방식에 새로운 요청이 들어오거나 기존 작업이 끝날 때만 의사결정을 내리는 '이벤트 기반 스케줄링'을 결합했다. 그 결과, 정해진 마감 시간 내에 성공적으로 처리된 요청의 양을 의미하는 Goodput이 기존 대비 5.6배나 향상됐다. 이러한 구조 덕분에 우선순위가 높은 짧은 요청들은 빈번한 작업 전환에 따른 효율 손실 없이 즉시 '새치기'가 가능해졌으며, 이번 연구는 글로벌 규모의 AI 서비스를 더욱 신속하고 비용 효율적으로 만드는 중요한 진전으로 평가받는다.