原著者: Hetvi Shastri, Pragya Sharma, Walid A. Hanafy, David Irwin, Mani Srivastava, Prashant Shenoy
原著者: Hetvi Shastri, Pragya Sharma, Walid A. Hanafy, David Irwin, Mani Srivastava, Prashant Shenoy
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 ✨ これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
技術要約: FMplex – 拡張可能な基盤モデル・サービングのためのモデル仮想化
問題提起
基盤モデル(FM)は、言語、視覚、時系列、およびマルチモーダルなドメインにわたる多様なダウンストリーム・アプリケーションのバックボーンとなっています。しかし、既存のモデル・サービング・システム(例:NVIDIA Triton)は、「タスクごとのインスタンス」というパラダイムに基づいています。これは、カスタマイズされた各タスクに対して、独立した個別のモデル・コピーをロードする手法です。このアプローチは、以下の理由からFMにとって非効率的です。
- リソースの浪費: FMは、巨大で共有されたバックボーン(多くの場合、数ギガバイト規模)と、軽量なタスク固有の拡張(ヘッド、アダプタ)で構成されています。すべてのタスクに対してフル・バックボーンをロードすることは、最も重いコンポーネントを複製することになり、アクセラレータのメモリを浪費します。
- 効率の喪失: 独立したインスタンスは、タスク間でのバッチ処理およびロード・コストの償却を妨げます。
- 干渉と隔離: タスクを論理的な分離なしに共有GPU上に単に共存させると、あるタスクの負荷スパイクが他のタスクのパフォーマンスを低下させるという、タスク間の干渉が発生します。
- ライフサイクルの硬直性: 現在のシステムは、タスクのライフサイクルを物理的なモデル・インスタンスに結合させているため、バックボーン全体を再デプロイすることなくタスクを追加、削除、または変更することが困難です。
本論文は、FMのバックボーンを、タスクごとのデプロイメント・アーティファクトとしてではなく、OSの仮想化におけるCPUやメモリのような「共有システム基盤」として扱うべきであると主張しています。
手法: FMplex
著者らは、Foundation Model Virtualization(基盤モデル仮想化)を導入するサービング・システムであるFMplexを提案しています。その中核となる概念は、各タスクに提示される論理的にプライベートなFMインスタンスである**Virtual Foundation Model (vFM)**です。これは、共有された物理的なFMインスタンスによってバックアップされています。
主要なアーキテクチャ・コンポーネント
Virtual Foundation Model (vFM) 抽象化:
- デカップリング(分離): vFMは、タスクの論理的なビュー(カスタマイズ、状態、ライフサイクル)を物理的なバックボーンから切り離します。
- 構造: 各vFMは、Virtual Queue(リクエスト・ルーティング用)、Task Extensions(エンコーダ、デコーダ、およびLoRAのようなPEFTアダプタ)、およびState/Accounting(SLO、優先度、重み)を含みます。
- メカニズム: タスクが自身のvFMを呼び出すと、FMplexは呼び出しをインターセプトし、仮想キューを経由してルーティングし、必要に応じてタスク固有のアダプタを適用しながら、共有された物理的バックボーン上で実行します。
Batch-Aware Fair Queueing (BFQ) スケジューラ:
- 課題: 標準的なフェアシェア・スケジューラ(例:Start-Time Fair Queueing)は、リクエスト単位で動作するため、FMのスループットに不可欠なリクエスト・バッチ処理による効率化の利点を考慮していません。
- 解決策: BFQは、重み付きフェアシェアを近似しつつ、バッチ処理を最適化するワーク保存型(work-conserving)スケジューラです。
- 動作: リクエストに対してタスクの重みに基づいて開始/終了タグを割り当てます。最大サイズ(Bmax)に達するか、SLOのデッドラインが違反されるまで、反復的にバッチを形成します。
- アダプタの処理: BFQは、まず共通のバックボーン上でリクエストをバッチ化し、次に互換性のないアダプタの違いを逐次処理することで、バッチ処理の効率を損なうことなく公平性を確保し、アダプタの不整合を処理します。
- トークンベースのサポート: トークンベースのFM(例:LLM)の場合、リクエストレベルのランタイムとの一貫性を維持するために、BF系(token-level)の作業量をサービス時間単位で課金します。
Task-API および サービング・スタック:
- Task-API: ユーザーがエンコーダ、デコーダ、およびアダプタをvFMに付加することで、タスク・パイプラインを構築できるプログラミング・インターフェースです。これは、同一のパイプライン・オブジェクトを使用して、推論とファインチューニングの両方をサポートします。
- FMplex-Controller: デプロイメント・プランを管理するクラスターレベルのコントローラです。「Max-Share」ヒューリスティックを使用し、可能な限り既存の物理的バックボーンにタスクをバインドすることで、新しいバックボーンのインスタンス化を最小限に抑えます。
- 弾力的な適応(Elastic Adaptation): 負荷が変化した際、システムはタスクのvFMを、重いバックボーンを再ロードすることなく、軽量なタスク状態(キュー、アダプタ)のみを移動させることで、別の既存の物理的バックボーンに再バインドできます。
主な貢献
- デプロイメント共有のためのFM仮想化: 複数の独立してカスタマイズされたタスクが、論理的な隔離と独立したライフサイクルを維持しながら、単一の物理的FMインスタンスを共有することを可能にするvFM抽象化の導入。
- 共有ベースのサービング・スタック: 拡張可能なタスク構築のためのTask-APIと、共有を意識したクラスター・デプロイメントのためのFMplex-Controllerを統合したエンドツーエンドのシステム。
- プロトタイプ実装: 複数のモダリティ(時系列、視覚、LLM、VLM)およびランタイム(PyTorch、vLLM)をサポートする機能的なプロトタイプを実現し、ヘテロジニアスなFMにわたる柔軟性を実証。
- 包括的な評価: 7つのバックボーンFM(16のバリアント)と92のダウンストリーム・タスクを用いた厳格な評価。
実験結果
評価は、合成および実世界のトレース(Azure Functions)を用い、16ノードのAWSクラスター(NVIDIA T4 GPU)上で実施されました。
レイテンシの低減:
- 空間分割(Spatial Partitioning)(GPUパーティション上にタスクを隔離する手法)と比較して、FMplexはレイテンシを最大**80%**削減しました。
- ベストエフォート共存(Best-Effort Co-location)(隔離なしに一つのGPU上に複数のフル・インスタンスを配置する手法)と比較して、FMplexはレイテンシを最大**33.3%**削減しました。
- クラスター規模において、FMplexはベストエフォート共存と比較して、平均レイテンシを15%、P99レイテンシを**26%**低減しました。
リソース効率とスケーラビリティ:
- メモリ: FMplexはGPUメモリ使用量を大幅に削減します。例えば、10個の時系列タスクを共有バックボーン上に共存させる場合、独立デプロイでは10倍のメモリが必要ですが、FMplexでは1.17倍のメモリで済みます。
- スループット: 低負荷時(メモリがボトルネックとなる状況)において、FMplexはベストエフォート共存よりも最大6倍多くのタスクを維持でき、中・高負荷時(計算資源がボトルネックとなる状況)では8〜12%多いタスクを維持できました。
- 公平性: 非対称なサービス・ウェイト(例:3:1)の下で、FMplexは84 RPSを維持しながら0.97〜0.98の公平性スコアを維持しました。対照的に、バッチ処理を行わないフェアシェアリングは、同様の公平性を達成するには37 RPSしか出せず、管理されていない共有では公平性が0.66まで低下しました。
適応オーバーヘッド:
- FMplexは、ワークロードの急増に対する迅速な適応を示しました。タスクを既存のバックボーンに再バインドするのにかかった時間は0.5秒でしたが、非共有システムで要求される新しいバックボンドのロードには約58秒を要し、2桁のレイテンシ・スパイクを引き起こしました。
オーバーヘッド:
- FMplexによって導入されるスケジューリング・オーバーヘッド(キュー処理およびタグ計算)は極めて小さく、リクエストあたり平均0.35 msであり、バックボーンの実行時間に比べれば無視できるレベルです。
重要性と主張
本論文は、FMplexが、基盤モデルのアーキテクチャ(重い共有バックボーン、軽量な拡張)と現在のサービング・システム(タスクごとのインスタンス・デプロイメント)との間の根本的なミスマッチに対処していると主張しています。FMplexは、バックボーンを仮想化基盤として扱うことで、以下を可能にします。
- デプロイメント共有: バックボーンの重いメモリおよび計算コストを、複数のタスクにわたって償却します。
- タスクの隔離: フル・モデルの複製というリソース・ペナルティを負うことなく、タスクごとのパフォーマンス保証と隔離を提供します。
- 運用上の柔軟性: 基盤となるインフラストラクチャを再デプロイすることなく、タスクの追加、削除、または変更を動的に行うことができます。
著者らは、FMplexを単なる特定のモデルのための最適化ではなく、古典的な仮想化の原則を基盤モデル・サービングの領域へと拡張する、汎用的なシステム層として位置づけており、より効率的でスケーラブルなAIインフラストラクチャを実現するものとしています。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。
毎週最高の machine learning 論文をお届け。
スタンフォード、ケンブリッジ、フランス科学アカデミーの研究者に信頼されています。
受信トレイを確認して登録を完了してください。
問題が発生しました。もう一度お試しください。
スパムなし、いつでも解除可能。