[論文レビュー] Fairness in Serving Large Language Models
本稿では、大規模言語モデル(LLM)サービングにおけるフェアなスケジューリングを実現する新しいアルゴリズムであるバーチャルトークンカウンター(VTC)を提案する。VTCは、各クライアントごとの累積サービスを追跡することで、トークンレベルでのフェアネスを保証する。VTCは、ワークロードが多様で、リクエスト長が不確実な状況下でも、FCFS や RPM に基づく手法を上回るフェアネスとリソース利用効率を達成し、ワークロードコンサービング条件下でクライアント間のサービス差に2倍のタイトな上限を設定する。
High-demand LLM inference services (e.g., ChatGPT and BARD) support a wide range of requests from short chat conversations to long document reading. To ensure that all client requests are processed fairly, most major LLM inference services have request rate limits, to ensure that no client can dominate the request queue. However, this rudimentary notion of fairness also results in under-utilization of the resources and poor client experience when there is spare capacity. While there is a rich literature on fair scheduling, serving LLMs presents new challenges due to their unpredictable request lengths and their unique batching characteristics on parallel accelerators. This paper introduces the definition of LLM serving fairness based on a cost function that accounts for the number of input and output tokens processed. To achieve fairness in serving, we propose a novel scheduling algorithm, the Virtual Token Counter (VTC), a fair scheduler based on the continuous batching mechanism. We prove a 2x tight upper bound on the service difference between two backlogged clients, adhering to the requirement of work-conserving. Through extensive experiments, we demonstrate the superior performance of VTC in ensuring fairness, especially in contrast to other baseline methods, which exhibit shortcomings under various conditions. The reproducible code is available at https://github.com/Ying1123/VTC-artifact
研究の動機と目的
- リクエスト長が予測不能で、入力/出力トークンの処理コストにばらつきが生じるLLMサービングにおけるフェアネス課題に対処すること。
- 従来のレート制限(例:RPM)の限界を克服し、余剰リソースが存在する状況でもリソースの未利用やクライントの体験の悪化を回避すること。
- 変動するリクエスト長とバッチ処理のダイナミクスが存在する中で、クライアント間のフェアなサービス配分を保証するとともに、GPUの高い利用効率を維持するスケジューリングアルゴリズムを設計すること。
- 入力および出力トークンの処理に基づく設定可能なコスト関数を用いて、LLMサービングにおけるフェアネスを形式化すること。
- サーバー容量の変動に依存しないスケジューラーを設計し、継続的バッチ処理や現代のLLM推論最適化とシームレスに統合すること。
提案手法
- 入力トークンと出力トークンの処理コストに応じて重みを割り当てることで、細分化されたトークンレベルでのフェアネスを実現するコスト関数を提案する。
- 各クライアントごとに累積サービス(トークン単位)を追跡するバーチャルトークンカウンター(VTC)アルゴリズムを導入する。
- 累積サービスが最小(最も低いカウンター値)のクライアントを優先順位キューでスケジューリングすることで、ワークロードコンサービング動作とフェアネスを保証する。
- 現在の進行状況に基づいて将来のサービスを推定することで、未知の出力長を考慮した動的カウンター更新メカニズムを採用し、過剰補填を回避する。
- 継続的バッチ処理およびPagedAttentionとネイティブに統合可能であり、フェアネス保証を損なわず、効率的なGPU利用を実現する。
- 理論的分析により、いかなる2つのバックログ状態にあるクライアント間のサービス差に2倍のタイトな上限が存在することを証明し、ワークロードコンサービング制約下での強いフェアネスを保証する。
実験結果
リサーチクエスチョン
- RQ1入力と出力トークンの処理コストにばらつきがあり、リクエスト長が変動する状況下で、LLMサービングにおけるフェアネスをどのように意味的に定義できるか?
- RQ2予測不能な出力長と動的GPU容量が存在する中で、高いリソース利用効率を維持しながらフェアネスを保証できるスケジューリングメカニズムは何か?
- RQ3ワークロードコンサービングであり、サーバー容量の変動やリクエストの非均一性に対しても頑健なフェアなスケジューラーを設計できるか?
- RQ4提案されたVTCスケジューラーは、FCFSおよびRPMベースのスケジューリングと比較して、多様なワークロード下でフェアネスとリソース利用効率においてどのように異なるか?
- RQ5VTC下でのクライアント間のサービス差の理論的上限は何か?また、最適なフェアネス上限と比較するとどうなるか?
主な発見
- VTCは、いかなる2つのバックログ状態にあるクライアント間のサービス差に2倍のタイトな上限を達成し、ワークロードコンサービング条件下での強いフェアネス保証を裏付ける。
- 広範な実験により、VTCは特に高負荷時およびリクエスト長が変動する状況下で、FCFSおよびRPMベースのスケジューリングを顕著に上回るフェアネスを実現することが示された。
- サービス差の分散は、メモリプールが大きくなるほど長時間のリクエスト長が延びるほど増加する傾向にあり、理論的分析の妥当性が裏付けられ、未知の出力長の影響が明確に示された。
- カウンター更新にのみ入力トークンを使用すると、短時間リクエストで過剰補填が生じるが、VTCは推定された出力トークンコストを組み込むことでこれを是正する。
- GPUの処理レートがメモリ制約によって変動する状況下でも、VTCはフェアネスを維持でき、動的システム挙動に対する頑健性を示した。
- VTCは、継続的バッチ処理やPagedAttentionといった既存のLLMサービング最適化とシームレスに統合可能であり、アーキテクチャの大幅な見直しを伴わずに実用的な導入が可能である。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。