[論文レビュー] Design and implementation of self-adaptable parallel algorithms for scientific computing on highly heterogeneous HPC platforms
本稿では、事前に計算されたモデルに依存せず、実行中にプロセッサ速度関数を動的に推定する、高に異種なHPCプラットフォーム向けの自己適応型並列アルゴリズムの新規クラスを提案する。低コストで部分的かつ正確な速度関数推定を構築することで、実行時間の分布にかかるコストが最適化されたアプリケーション全体の実行時間と比べて桁違いに低くなるため、自己適応型システムにおいて実用的である近似的に最適なタスク配分が可能になる。
Traditional heterogeneous parallel algorithms, designed for heterogeneous clusters of workstations, are based on the assumption that the absolute speed of the processors does not depend on the size of the computational task. This assumption proved inaccurate for modern and perspective highly heterogeneous HPC platforms. New class of algorithms based on the functional performance model (FPM), representing the speed of the processor by a function of problem size, has been recently proposed. These algorithms cannot be however employed in self-adaptable applications because of very high cost of construction of the functional performance model. The paper presents a new class of parallel algorithms for highly heterogeneous HPC platforms. Like traditional FPM-based algorithms, these algorithms assume that the speed of the processors is characterized by speed functions rather than speed constants. Unlike the traditional algorithms, they do not assume the speed functions to be given. Instead, they estimate the speed functions of the processors for different problem sizes during their execution. These algorithms do not construct the full speed function for each processor but rather build and use their partial estimates sufficient for optimal distribution of computations with a given accuracy. The low execution cost of distribution of computations between heterogeneous processors in these algorithms make them suitable for employment in self-adaptable applications. Experiments with parallel matrix multiplication applications based on this approach are performed on local and global heterogeneous computational clusters. The results show that the execution time of optimal matrix distribution between processors is significantly less, by orders of magnitude, than the total execution time of the optimized application.
研究の動機と目的
- 問題サイズに依存しない定数のプロセッサ速度を仮定する従来の異種並列アルゴリズムの制限を解消すること。
- 自己適応型アプリケーションにおける完全な関数的パフォーマンスモデル(FPM)の構築にかかる高コストを克服すること。
- 最適な負荷分散を達成するために必要なプロセッサ速度関数の部分のみを推定する新しい並列アルゴリズムのクラスを設計すること。
- 配分意思決定にかかる実行時オーバーヘッドを低く保つことで、科学計算におけるリアルタイム適応に適した方法を確保すること。
- 局所的およびグローバルな異種クラスタ上で行列乗算ワークロードを用いて実験を行い、手法の有効性を検証すること。
提案手法
- アプリケーション実行中にプロセッサ速度関数を動的に推定する手法を導入し、部分的な関数近似のみを用いる。
- プロセッサパフォーマンスを問題サイズの関数としてモデル化することで、固定された速度定数に依存しない。
- 近似的に最適な負荷分散を達成するために、必要な最小限の速度関数のセグメントのみを構築および使用する。
- 関連する問題サイズと実行時測定に焦点を当てることで、完全なFPMの構築を回避する。
- これらの部分的推定を、実行時コストを最小限に抑えた軽量な配分メカニズムに統合する。
- 異種クラスタ上で並列行列乗算を用いて評価し、配分コストを最適化されたアプリケーション全体の実行時間と比較する。
実験結果
リサーチクエスチョン
- RQ1動的かつ部分的なプロセッサ速度関数推定は、高に異種なHPCプラットフォームにおける効率的な負荷分散を可能にするか?
- RQ2事前に計算されたFPMではなく、推定された速度関数を用いた場合の配分意思決定にかかる実行時コストはいかほどか?
- RQ3最適化された科学的アプリケーションの総実行時間に比べて、配分のオーバーヘッドはどの程度か?
- RQ4適応のオーバーヘッドを最小限に抑える必要がある自己適応型アプリケーションにおいて、提案手法は実際に有効に使用可能か?
- RQ5部分的推定アプローチは、完全なFPMに基づく手法と比較して、タスク配分の精度をどの程度維持できるか?
主な発見
- 部分的速度関数推定を用いた最適な配分にかかる実行時間は、最適化されたアプリケーション全体の実行時間と比べて桁違いに短く、著しく低い。
- 提案手法は最小限の実行時コストで近似的に最適な負荷分散を達成でき、自己適応型システムに適している。
- 実行中に速度関数を動的に推定することで、完全なFPM構築にかかる高コストを回避でき、実用的な導入が可能になる。
- 局所的およびグローバルな異種クラスタ上で実施した実験により、実世界の科学的計算ワークロードにおける効率性とスケーラビリティが確認された。
- 適応のオーバーヘッドが総アプリケーション時間の無視できる程度にまで低減され、科学的アプリケーションにおけるリアルタイム適応が可能になった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。