[論文レビュー] Design and Performance Characterization of RADICAL-Pilot on Titan
本論文は、Titanのようなリーダーシップクラスのスーパーコンピュータ上で数千のMPIタスクをスケーラブルに実行できるように設計された、ポータブルでPythonベースのPilotシステムRADICAL-Pilot (RP) を提示する。RPの性能と131,000コアおよび4,096タスクへの拡張性を評価し、OpenMPIのORTEが主なパフォーマンスボトルネックであることを特定。131,000コアを超えると障害率が上昇し、最適化によりシステムソフトウェアに依存するスケーラビリティの限界まで拡張可能であることが判明。
Many extreme scale scientific applications have workloads comprised of a large number of individual high-performance tasks. The Pilot abstraction decouples workload specification, resource management, and task execution via job placeholders and late-binding. As such, suitable implementations of the Pilot abstraction can support the collective execution of large number of tasks on supercomputers. We introduce RADICAL-Pilot (RP) as a portable, modular and extensible Python-based Pilot system. We describe RP's design, architecture and implementation. We characterize its performance and show its ability to scalably execute workloads comprised of thousands of MPI tasks on Titan--a DOE leadership class facility. Specifically, we investigate RP's weak (strong) scaling properties up to 131K (65K) cores and 4096 (16384) 32 core tasks. RADICAL-Pilot can be used stand-alone, as well as integrated with other tools as a runtime system.
研究の動機と目的
- リーダーシップクラスのHPCシステム上で、数千の異種でMPIベースのタスクから構成される大規模ワークロードのスケーラブルな実行ニーズに対応すること。
- オールドリッジ・リーダーシップコンピューティング施設のTitanスーパーコンピュータ上でRADICAL-Pilot (RP) のパフォーマンスとスケーリング特性を評価すること。
- 極大規模ワークロード下でのタスク起動およびスケジューリングにおけるRPアーキテクチャの主なパフォーマンスボトルネックを同定および局所化すること。
- 同種のMPIタスクに最適化されたRPの内部スケジューラを最適化し、スループットとスケーラビリティを向上させること。
- ワークフローおよびアプリケーションツールと統合されたランタイムシステムとしてRPを生産環境で利用可能にする。
提案手法
- RADICAL-Pilot (RP) は、ジョブプレースホルダーや遅延バインディングを介してワークロード定義、リソース管理、タスク実行を分離するモジュラーかつ拡張可能なPythonベースのPilotシステムとして実装されている。
- SLURMスケジューラをTitanで使用することで、中央のエージェントモジュールがHPCリソース全体にわたるタスク実行を調整する多段階スケジューリングアプローチを採用している。
- RADICAL-Analyticsと統合されたカスタムのプロファイリングおよびインテリジェンススタックにより、RPのサブシステム全体にわたる細粒度のパフォーマンス監視とオーバーヘッドの帰属分析が可能になっている。
- 一般用途の内部スケジューラに代わる、同種タスクセット向けに最適化された専用スケジューラを実装し、汎用的な検索ロジックを排除して直接参照に置き換えることでオーバーヘッドを低減した。
- 弱スケーリングおよび強スケーリングの挙動を評価するために、最大4,096タスク(各タスク32コア)のワークロードを用いて、131,000コアまでスケーリングした実験をTitanで実施した。
- システムレベルのプロファイリングと障害分析により、特にOpenMPIランタイム環境(ORTE)におけるボトルネックを特定し、スケール下でのタスク起動レートのジターリングや障害率の増加を理解した。
実験結果
リサーチクエスチョン
- RQ1Titan上で数千のMPIタスクを実行するワークロードに対して、RADICAL-Pilotの弱スケーリングおよび強スケーリングの挙動はどのように変化するか?
- RQ2スケール下でのRADICAL-Pilotにおける主なランタイムオーバーヘッドの原因は何か。また、それらをどのように特定・緩和できるか?
- RQ3RPのデフォルトの汎用スケジューラと、同種のMPIタスクに最適化されたスケジューラのパフォーマンスは、どのように比較されるか?
- RQ4RADICAL-Pilotのスケーラビリティは、特にOpenMPIのORTEに起因するシステムソフトウェアの制限によってどの程度制限を受けるか?
- RQ5Titanで131,000コアを超えて利用する際に、ORTEでの障害率が上昇する原因は何か?
主な発見
- RADICAL-Pilotは、弱スケーリング下で131,000コアおよび4,096タスクにスケーリングに成功し、パフォーマンスとスケーラビリティは最終的にRPの内部設計ではなく、システムソフトウェアに起因する。
- タスクの起動レートは、OpenMPIランタイム環境(ORTE)のオーバーヘッドに支配され、スケール下で主なボトルネックとなる。
- 131,000コアを超えて使用すると、ORTEレイヤーの障害率が顕著に上昇し、システムレベルでのスケーラビリティの限界を示している。
- 同種のMPIタスクに最適化された内部スケジューラの最適化により、スループットが1秒あたり7タスクから70タスクに向上し、約10倍の改善が達成された。これは、汎用的な検索ロジックを直接参照に置き換えることで実現した。
- RPのパフォーマンスとスケーラビリティは、もはやRPのアーキテクチャではなく、ORTEの制限によって制限されている。これにより、さらなる改善は低レベルのシステムソフトウェアの強化に依存することが示された。
- RADICAL-Pilotは、DOEおよびNSFのHPCシステムで1億コア時間以上を生産環境で使用しており、DOE INCITEおよびNSF PRACを含む主要な助成金を受領している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。