[論文レビュー] Pollux: Co-adaptive Cluster Scheduling for Goodput-Optimized Deep Learning
Pollux は各ジョブの設定(バッチサイズ、学習率、勾配蓄積)とクラスタ全体のリソース割り当てを共同で最適化し、goodput(スループット × 効率)をモデル化して、全体の DL トレーニング性能と公平性を最大化します。
Pollux improves scheduling performance in deep learning (DL) clusters by\nadaptively co-optimizing inter-dependent factors both at the per-job level and\nat the cluster-wide level. Most existing schedulers expect users to specify the\nnumber of resources for each job, often leading to inefficient resource use.\nSome recent schedulers choose job resources for users, but do so without\nawareness of how DL training can be re-optimized to better utilize the provided\nresources.\n Pollux simultaneously considers both aspects. By monitoring the status of\neach job during training, Pollux models how their goodput (a novel metric we\nintroduce that combines system throughput with statistical efficiency) would\nchange by adding or removing resources. Leveraging these information, Pollux\ndynamically (re-)assigns resources to improve cluster-wide goodput, while\nrespecting fairness and continually optimizing each DL job to better utilize\nthose resources.\n In experiments with real DL jobs and with trace-driven simulations, Pollux\nreduces average job completion times by 37-50% relative to state-of-the-art DL\nschedulers, even when they are provided with ideal resource and training\nconfigurations for every job. Pollux promotes fairness among DL jobs competing\nfor resources based on a more meaningful measure of useful job progress, and\nreveals a new opportunity for reducing DL cost in cloud environments. Pollux is\nimplemented and publicly available as part of an open-source project at\nhttps://github.com/petuum/adaptdl.\n
研究の動機と目的
- 共有クラスターでの DL ワークロードを効率的にスケジュールする課題を動機づける。
- 各ジョブのトレーニングパラメータとリソース割り当てを共同最適化する共適応スケジューリングフレームワークを提案する。
- DL トレーニングのためのシステムのスループットと統計的効率の両方を捉える goodput を定義する。
- 予測スケジューリングとリソースの動的再割り当てを可能にするため、スループットと効率をモデル化する。
- 先端的なスケジューラと比べて完了時間の大幅な削減と公平性の改善を実証する。
提案手法
- goodput を DL トレーニングのシステムスループットと統計的効率の積として定義する。
- 統計的効率を勾配ノイズスケール(PGNS)を用いてモデル化し、バッチサイズごとに効率を予測する。
- 各GPUあたりのバッチサイズ、リソース割り当て、勾配蓄積のパラメータを用いてシステムスループットをモデル化し、勾配計算と同期のオーバーラップを含む。
- 二層スケジューラを実装: 各ジョブの PolluxAgent はスループットと効率のモデルを学習し局所的なトレーニングパラメータを調整、クラスタ全体の PolluxSched はフェアネスと再割り当てオーバーヘッドを考慮しつつクラスタの goodput を最大化するようリソースを再配分。
- AdaScale、線形、平方根スケーリングなどのルールを取り込むためのプラグイン式 LR スケーリングインターフェースを提供。
- 実際の DL タスクとトレース駆動シミュレーションでモデルを検証し、Tiresias および Optimus に対する改善とクラウド環境でのコスト削減を報告。
実験結果
リサーチクエスチョン
- RQ1変動するリソース割り当ての下で、throughput と efficiency の結合指標としての goodput をどのように定義し、予測できるか?
- RQ2各ジョブのトレーニングパラメータを調整しクラスタリソースを再割り当てする共適応アーキテクチャは、完了時間と公平性の点で既存の DL スケジューラを上回るか?
- RQ3Pollux はさまざまなバッチサイズとリソース構成に対して、DL ジョブのスループットと効率をどれだけ正確にモデル化できるか?
- RQ4勾配蓄積と学習率スケーリングが goodput と全体的なクラスタ性能に与える影響は?
- RQ5クラウド環境での goodput 主導の自動スケーリングによる潜在的なコスト削減はどれくらいか?
主な発見
- Pollux は、最先端スケジューラの理想的に調整されたベースラインと比較して、平均ジョブ完了時間を最大で37%〜50%削減する。
- 実験では Tiresias および Optimus と比較して平均完了時間を最大73%削減。
- 完了時間の公平性を1.5倍〜5.4倍改善。
- 測定された goodput モデルに応じてリソースを動的に再配分することで、クラスタ全体の goodput の改善を示す。
- クラウドケーススタディでは、大規模モデルのトレーニングにおいて goodput 主導の自動スケーリングで最大25%のコスト削減が見込まれる。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。