Core Concepts
ExeGPTは、潜在的な制約条件の下で、LLMインファレンスのスループットを最大化するための最適な実行スケジュールを見つけ、実行する分散システムです。
Abstract
本論文では、ExeGPTと呼ばれる分散システムを提案しています。ExeGPTは、LLMインファレンスの実行スケジュールを最適化することで、潜在的な制約条件の下でスループットを最大化することを目的としています。
主な特徴は以下の通りです:
2つの新しいスケジューリング戦略(Round-Robin Allocation (RRA)とWorkload-Aware Allocation (WAA))を提案しています。これらの戦略は、エンコーディングとデコーディングの実行を分離することで、それぞれの最適化を可能にしています。
スループットと待ち時間のトレードオフを柔軟に制御できる4つの制御変数(バッチサイズ、デコーダーマイクロバッチ、部分的なテンソル並列度、エンコーディング頻度)を導入しています。
入力/出力シーケンス長の分布を活用して、実行スケジュールをシミュレーションし、最適な設定を見つける最適化アルゴリズムを提案しています。
6つのLLMモデル(T5、OPT、GPT-3)と5つのNLPタスクを用いた評価実験を行い、FasterTransformerに比べて最大15.2倍のスループット向上と6倍の待ち時間短縮を達成しています。
Stats
単一のエンコーディング層の実行時間は、バッチサイズとシーケンス長に依存する。
単一のデコーディング層の実行時間は、入力サイズ(バッチサイズ×入力長)に依存する。
テンソル並列とパイプライン並列の同期オーバーヘッドは互いに干渉しない。