Skip to main content
QUICK REVIEW

[論文レビュー] Deep Reinforcement Agent for Scheduling in HPC

Yuping Fan, Zhiling Lan|arXiv (Cornell University)|Feb 11, 2021
Cloud Computing and Resource Management参考文献 18被引用数 9
ひとこと要約

本稿では、リソース予約とバックフィリングを統合することで、動的かつ最適化されたジョブスケジューリングを実現する、ハイパースケールコンピューティング(HPC)向けの深層強化学習ベースのスケジューリングエージェントであるDRASを提案する。DRASは階層的ニューラルネットワークを用い、ワークロードの変化に自動的に学習・適応可能であり、従来のヒューリスティクスおよび最適化手法と比較して平均ジョブ待機時間を最大45%短縮する。また、ジョブのスターヴェーションを防止し、低遅延の実行を維持する。

ABSTRACT

Cluster scheduler is crucial in high-performance computing (HPC). It determines when and which user jobs should be allocated to available system resources. Existing cluster scheduling heuristics are developed by human experts based on their experience with specific HPC systems and workloads. However, the increasing complexity of computing systems and the highly dynamic nature of application workloads have placed tremendous burden on manually designed and tuned scheduling heuristics. More aggressive optimization and automation are needed for cluster scheduling in HPC. In this work, we present an automated HPC scheduling agent named DRAS (Deep Reinforcement Agent for Scheduling) by leveraging deep reinforcement learning. DRAS is built on a novel, hierarchical neural network incorporating special HPC scheduling features such as resource reservation and backfilling. A unique training strategy is presented to enable DRAS to rapidly learn the target environment. Once being provided a specific scheduling objective given by system manager, DRAS automatically learns to improve its policy through interaction with the scheduling environment and dynamically adjusts its policy as workload changes. The experiments with different production workloads demonstrate that DRAS outperforms the existing heuristic and optimization approaches by up to 45%.

研究の動機と目的

  • 複雑で動的なHPC環境における静的かつ手動でチューニングされたスケジューリングヒューリスティクスの限界を克服すること。
  • 変動が大きく予測不能なワークロードにおいて、ジョブの待機時間を短縮し、スターヴェーションを防止すること。
  • 人間の介入なしにクラスタースケジューリングにおけるポリシーの学習と適応を自動化すること。
  • 履歴ジョブトレースから学習し、変化するシステム負荷に適応することで、長期的なパフォーマンス最適化を実現すること。
  • 公平性、ジョブ優先順位、リソース効率性をバランスさせながら、高いシステム利用率を達成すること。

提案手法

  • 2段階のニューラルネットワークを備えた階層的深層強化学習エージェント(DRAS)を設計:第1段階は即時実行または予約実行のためのジョブ選択を行い、第2段階はバックフィルされたジョブの選択を行う。
  • HPC固有のスケジューリング機能(リソース予約とバックフィリング)を強化学習の定式化に直接統合する。
  • 単純なワークロードシナリオから複雑なシナリオへ段階的に移行する3フェーズのトレーニング戦略を構築し、高速かつ安定した収束を実現する。
  • 生産環境HPCシステム(CoriとTheta)の履歴ジョブトレースを用いてDRASをトレーニングし、システムおよびワークロード固有のスケジューリングポリシーを学習する。
  • スケジューリングの目的に基づく累積報酬を最適化するために、プロキシマルポリシー最適化(PPO)とディープQラーニング(DQL)をトレーニングアルゴリズムとして採用する。
  • 推論中にネットワークパラメータを動的に調整し、システム負荷の変化に適応することで、ワークロードの急増時においても強固なパフォーマンスを維持する。

実験結果

リサーチクエスチョン

  • RQ1深層強化学習エージェントは、静的ヒューリスティクスおよび最適化手法をはるかに超えるHPCスケジューリング最適化を効果的に学習できるか?
  • RQ2DRASは高いシステム利用率と低い平均ジョブ待機時間を維持しつつ、ジョブのスターヴェーションをどの程度効果的に防止できるか?
  • RQ3手動での再チューニングなしに、DRASは動的変化するワークロードにどの程度適応可能なスケジューリングポリシーを有するか?
  • RQ4実世界のHPCワークロード下で、FCFS、BinPacking、およびDecimaと比較してDRASのパフォーマンスはどの程度優れているか?
  • RQ5DRASのランタイムオーバーヘッドはどの程度で、生産環境HPC環境におけるオンラインデプロイに実用的か?

主な発見

  • DRASは、CoriおよびThetaの実HPCトレースにおいて、従来のヒューリスティクスおよび最適化手法と比較して、平均ジョブ待機時間を最大45%短縮した。
  • DRASは、FCFS、Decima-PG、および最適化手法を大きく上回り、特に高負荷時における準備完了ジョブおよびバックフィルジョブの待機時間を顕著に短縮した。
  • 階層的アーキテクチャのおかげで、DRASは大規模ジョブのリソース予約を効果的に実行でき、他の手法と比較してスターヴェーションを防止した(他の手法では2〜10倍の待機時間が延長される場合もあった)。
  • DRASはワークロードの急増時にポリシーを動的に調整し、固定ポリシーに依存する静的手法よりも顕著な待機時間短縮を達成した。
  • DRAS-PGおよびDRAS-DQLの両方とも低ランタイムオーバーヘッドを示し、標準の個人用コンピュータ上では1回の更新あたり2秒未塔の推論時間であったため、オンラインデプロイに適している。
  • 3フェーズのトレーニングプロセスにより、DRASは多様なワークロードパターン、特にレアで複雑なシナリオに対しても迅速に収束し、良好な一般化性能を示した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。