[論文レビュー] Multi-model Machine Learning Inference Serving with GPU Spatial Partitioning
本論文は、GPUリソースの空間的パーティショニングを活用することで、高スループットかつSLO準拠のマルチモデル機械学習推論を実現するGPUに配慮したスケジューリングフレームワークであるgpu-letを提案する。モデルのプロファイリングと干渉を考慮したスケジューリングに基づき、仮想GPUユニット(gpu-lets)を動的に割り当てることで、ベースライン手法と比較して平均102.6%のスループット向上を達成しながら、厳密な遅延制約を維持する。
As machine learning techniques are applied to a widening range of applications, high throughput machine learning (ML) inference servers have become critical for online service applications. Such ML inference servers pose two challenges: first, they must provide a bounded latency for each request to support consistent service-level objective (SLO), and second, they can serve multiple heterogeneous ML models in a system as certain tasks involve invocation of multiple models and consolidating multiple models can improve system utilization. To address the two requirements of ML inference servers, this paper proposes a new ML inference scheduling framework for multi-model ML inference servers. The paper first shows that with SLO constraints, current GPUs are not fully utilized for ML inference tasks. To maximize the resource efficiency of inference servers, a key mechanism proposed in this paper is to exploit hardware support for spatial partitioning of GPU resources. With the partitioning mechanism, a new abstraction layer of GPU resources is created with configurable GPU resources. The scheduler assigns requests to virtual GPUs, called gpu-lets, with the most effective amount of resources. The paper also investigates a remedy for potential interference effects when two ML tasks are running concurrently in a GPU. Our prototype implementation proves that spatial partitioning enhances throughput by 102.6% on average while satisfying SLOs.
研究の動機と目的
- SLO制約付きのバッチサイズによるGPUの未利用化を是正すること。
- 異種のMLモデルの並列実行を可能にすることで、マルチGPU環境におけるGPUリソース利用効率を向上させること。
- 予測可能で低遅延の推論を実現するための、GPUリソースの空間的および時間的パーティショニングを可能にする新しい抽象化(gpu-let)を設計すること。
- 共有GPUパーティション上で実行される並列MLワークロード間の干渉をモデル化し、低減すること。
- SLO制約下での動的かつ現実的なリクエストワークロードにおいて、提案されたスケジューラの有効性を評価すること。
提案手法
- NVIDIAのMPS空間的パーティショニングメカニズムを活用して、細粒度なGPUリソース共有を可能にする仮想GPU抽象化(gpu-let)を導入する。
- スケジューリング意思決定を支援するため、各MLモデルの計算要件と遅延特性をプロファイリングする。
- pre-VoltaおよびVola+ GPU上で並列キーナル実行を想定した、干渉推定モデルを適用し、性能劣化を予測する。
- 到着するリクエストレートに応じてgpu-letサイズを動的に調整することで、SLO準拠を維持するとともにスループットを最大化する。
- 空間的パーティショニング(gpu-letsを介して)と時間的バッチ処理を組み合わせたハイブリッドスケジューリング戦略を採用してリソース利用効率を最適化する。
- PyTorch上でプロトタイプを実装し、理想の全探索スケジューラおよびベースライン手法と比較して評価する。
実験結果
リサーチクエスチョン
- RQ1厳密なSLO制約下において、空間的GPUパーティショニングがマルチモデルML推論サーバーのスループットを顕著に向上させ得るか?
- RQ2共有GPUパーティション上で実行される並列MLワークロード間の干渉を、どのように正確にモデル化し、低減できるか?
- RQ3gpu-letベースのスケジューラは、現実世界のシナリオにおいて、理想の全探索スケジューラの性能にどの程度近づけるか?
- RQ4動的gpu-let再構成は、変動するリクエストワークロードにどのように対応するか、かつSLOを維持できるか?
- RQ51つのGPUに異種のMLモデルを共存させた場合、リソース効率とSLO準拠の間でどのようなトレードオフが生じるか?
主な発見
- 提案されたgpu-letスケジューラは、SLO制約下でベースライン手法と比較して平均102.6%のスループット向上を達成した。
- システムはSLO準拠を効果的に維持しており、動的ワークロード変化にもかかわらず、わずか0.14%のリクエストしか遅延制約に違反しなかった。
- スケジューラは、理想の全探索スケジューラの最大スループットの92.3%を達成し、最悪ケースでも87.7%を維持した。
- フレームワークは、リクエスト到着レートの変化に応じてgpu-letサイズを動的に調整することで、SLO違反を低減した。
- 干渉推定モデルにより、パーティショニングされたGPUリソース上で複数のモデルが同時に実行される場合の性能劣化を正確に予測できるようになった。
- プロトタイプは、SLOによってバッチサイズが制限される状況において、空間的パーティショニングがGPU利用効率を顕著に向上させることを示した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。