Skip to main content
QUICK REVIEW

[論文レビュー] Vidur: A Large-Scale Simulation Framework For LLM Inference

Amey Agrawal, Nitin Kedia|arXiv (Cornell University)|May 8, 2024
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 を拡張性のあるワークロードスイートとして導入し、さまざまなパターン、スケジューラ、サービングフレームワークで忠実度とベンチマークを確保する。
  • Vidur-Search を実装し、各デプロイメント設定とワークロードごとに最大持続可能な QPS を二分探索して、1ドルあたりの QPS を最大化する。

実験結果

リサーチクエスチョン

  • RQ1Vidur は、異なるモデル、並列化戦略、ワークロードトレースを横断してエンドツーエンドの LLM 推論性能を正確に予測できるか?
  • RQ2ワークロードの変動は、LLM 推論のレイテンシやスループットなどの主要な性能指標にどのように影響するか?
  • RQ3Vidur-Search は、特定のワークロードとハードウェアに対して指定された SLO を満たす費用対効果の高いデプロイ設定を識別できるか?
  • RQ4動的なオンラインワークロードに対する Vidur の予測の忠実度は、オフラインの静的シナリオと比較してどうか?

主な発見

  • Vidur は、モデル、ハードウェア、トレースの範囲で、リクエストレベルの LLM 推論性能を誤差 9% 未満で予測する。
  • Vidur-Bench は、入力/デコードトークン数やバッチサイズなど、ワークロード特性が出力指標に大きく影響することを示している。
  • Vidur-Search は、LLaMA2-70B などのデプロイ設定を、CPU 上での1時間と、GPU時間42K時間と22万ドルのコストに相当するハードウェア探索と比べて、ほぼ最適解に近い配置を見つけられるように、はるかに速く安価に見つけられる。
  • プロファイリングは、トークンレベル、シーケンスレベル、通信のごく少数のオペレータカテゴリに焦点を当て、モデル全体にわたるスケーラブルな予測を可能にする。
  • フレームワークは、大規模ワークロードとトレースのクラスター規模のメトリクスを高忠実度で模倣することを示す。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。