Skip to main content
QUICK REVIEW

[논문 리뷰] Vidur: A Large-Scale Simulation Framework For LLM Inference

Amey Agrawal, Nitin Kedia|arXiv (Cornell University)|2024. 05. 08.
Simulation Techniques and Applications인용 수 8
한 줄 요약

Vidur는 Vidur-Bench 및 Vidur-Search를 갖춘 고충실도 LLM 추론 시뮬레이터로, 모델, 하드웨어, 워크로드 간 비용 효율적인 배치 구성 탐색을 가능하게 한다.

ABSTRACT

Optimizing the deployment of Large language models (LLMs) is expensive today since it requires experimentally running an application workload against an LLM implementation while exploring large configuration space formed by system knobs such as parallelization strategies, batching techniques, and scheduling policies. To address this challenge, we present Vidur - a large-scale, high-fidelity, easily-extensible simulation framework for LLM inference performance. Vidur models the performance of LLM operators using a combination of experimental profiling and predictive modeling, and evaluates the end-to-end inference performance for different workloads by estimating several metrics of interest such as latency and throughput. We validate the fidelity of Vidur on several LLMs and show that it estimates inference latency with less than 9% error across the range. Further, we present Vidur-Search, a configuration search tool that helps optimize LLM deployment. Vidur-Search uses Vidur to automatically identify the most cost-effective deployment configuration that meets application performance constraints. For example, Vidur-Search finds the best deployment configuration for LLaMA2-70B in one hour on a CPU machine, in contrast to a deployment-based exploration which would require 42K GPU hours - costing ~218K dollars. Source code for Vidur is available at https://github.com/microsoft/vidur.

연구 동기 및 목표

  • 대형 언어 모델(LLMs)의 병렬성, 배치, 스케줄링의 광범위한 구성 공간을 탐색하여 비용 효율적인 배포의 필요성을 동기화한다.
  • Vidur를 모델, 하드웨어, 워크로드 전반에 걸친 엔드 투 엔드 LLM 추론 성능을 프로파일링하고 예측하는 고충실도 시뮬레이터로 소개한다.
  • Vidur-Bench를 통해 워크로드 패턴과 정책을 벤치마크하고, Vidur-Search를 통해 성능 제약 하에서 배포 구성을 최적화한다.

제안 방법

  • LLMs를 토큰-수준, 시퀀스-수준, 커뮤니케이션 수준의 연산자 소수 집합으로 분해하고 예측 런타임 추정기를 구축하기 위한 최소 입력 크기 세트를 프로파일링한다.
  • 토큰-수준, 시퀀스-수준, 커뮤니케이션 연산자를 프로파일링하여 프로파일링되지 않은 입력에 대해 보간할 수 있는 연산자별 런타임 모델을 만든다.
  • 제한된 프로파일링 데이터에서 커널 런타임을 예측하기 위해 랜덤 포레스트 회귀 기반 런타임 추정기를 사용한다.
  • 글로벌, 복제본, 복제본-스테이지 구성요소를 갖는 플러그 가능한 계층형 스케줄러를 도입하여 배치, 메모리 관리, 스케줄링 정책을 시뮬레이션한다.
  • Vidur-Bench를 확장 가능한 워크로드 모음으로 도입하여 다양한 패턴, 스케줄러, 서빙 프레임워크를 제공하고 충실도 및 벤치마킹을 강화한다.
  • 배포 구성 및 워크로드마다 최대 지속 가능한 QPS를 이진 탐색으로 찾아 달러당 QPS를 최대화하도록 Vidur-Search를 구현한다.

실험 결과

연구 질문

  • RQ1Vidur가 서로 다른 모델, 병렬화 전략, 워크로드 트레이스에 대해 엔드-투-엔드 LLM 추론 성능을 정확하게 예측할 수 있는가?
  • RQ2워크로드 변동이 LLM 추론에서 지연 시간 및 처리량 같은 주요 성능 지표에 어떤 영향을 미치는가?
  • RQ3Vidur-Search가 주어진 워크로드와 하드웨어에 대해 특정 서비스 수준 목표(SLO)를 충족하는 비용 효과적인 배포 구성을 식별할 수 있는가?
  • RQ4동적 온라인 워크로드에 대한 Vidur의 예측의 충실도가 오프라인 정적 시나리오에 비해 어떤가?

주요 결과

  • Vidur는 다양한 모델, 하드웨어, 트레이스에 걸친 요청 수준의 LLM 추론 성능을 9% 미만의 오차로 예측한다.
  • Vidur-Bench는 입력/디코드 토큰 수 및 배치 크기와 같은 워크로드 특성이 출력 지표에 상당한 영향을 미친다는 것을 보여준다.
  • Vidur-Search는 LLaMA2-70B와 같이 거의 최적에 가까운 배포 구성을 하드웨어 기반 탐색보다 훨씬 빠르고 저렴하게 찾을 수 있다(예: CPU 1시간 대 vs GPU 42K 시간 및 $218K).
  • 프로파일링은 모델 간 확장 가능한 예측을 가능하게 하는 토큰-수준, 시퀀스-수준, 커뮤니케이션의 소수 연산자 카테고리로 초점을 맞춘다.
  • 프레임워크는 대규모 워크로드 및 추적의 클러스터 수준 지표를 높은 충실도로 모방하는 데에 높은 충실도를 보여준다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.