Skip to main content
QUICK REVIEW

[論文レビュー] Load Balancing using Hilbert Space-filling Curves for Parallel Reservoir Simulations

Hui Liu, Kun Wang|arXiv (Cornell University)|Aug 4, 2017
Distributed and Parallel Computing Systems被引用数 3
ひとこと要約

本稿では、並列リザーバー・シミュレーションにおける効率的なロードバランシングを達成するために、ヒルベルト空間充填曲線(HSFC)に基づくグリッド分割手法を提案する。3次元構造的グリッドを1次元ヒルベルト曲線にマッピングし、曲線を等間隔に分割することで、空間的局所性とMPIプロセス間での負荷のバランスを保証する。この手法は優れたスケーラビリティと分割品質を示し、数十億のセルを含む大規模なシミュレーションにおいて、最大4,096個のMPIプロセスで線形スループットを達成した。

ABSTRACT

The goal of load balancing (grid partitioning) is to minimize overall computations and communications, and to make sure that all processors have a similar workload. Geometric methods divide a grid by using a location of a cell while topological methods work with connectivity of cells, which is generally described as a graph. This paper introduces a Hilbert space-filling curve method. A space-filling curve is a continuous curve and defines a map between a one-dimensional space and a multi-dimensional space. A Hilbert space-filling curve is one special space-filling curve discovered by Hilbert and has many useful characteristics, such as good locality, which means that two objects that are close to each other in a multi-dimensional space are also close to each other in a one dimensional space. This property can model communications in grid-based parallel applications. The idea of the Hilbert space-filling curve method is to map a computational domain into a one-dimensional space, partition the one-dimensional space to certain intervals, and assign all cells in a same interval to a MPI. To implement a load balancing method, a mapping kernel is required to convert high-dimensional coordinates to a scalar value and an efficient one-dimensional partitioning module that divides a one-dimensional space and makes sure that all intervals have a similar workload. The Hilbert space-filling curve method is compared with ParMETIS, a famous graph partitioning package. The results show that our Hilbert space-filling curve method has good partition quality. It has been applied to grids with billions of cells, and linear scalability has been obtained on IBM Blue Gene/Q.

研究の動機と目的

  • 大規模グリッドにおける並列リザーバー・シミュレーションにおけるロードバランシングの課題に取り組み、スケーラビリティとパフォーマンスの向上を図ること。
  • グラフベースの分割よりも実装が単純でありながら、高い分割品質を維持する幾何的ロードバランシング手法を開発すること。
  • 空間的局所性を保ちながら、構造的グリッドのワークロードをMPIプロセスに効率的に分散するために、空間充填曲線を用いること。
  • IBM Blue Gene/Q上でHSFC手法を用いた大規模リザーバー・シミュレーションにおいて、線形スケーリングと高いパフォーマンスを実証すること。
  • 科学計算ワークロード向けに、ParMETISのような複雑なグラフ分割ツールの実用的でスケーラブルな代替手段を提供すること。

提案手法

  • ヒルベルト曲線へのマッピングを容易にするために、3次元構造的計算ドメインを単位立方体にマップし、空間座標を正規化する。
  • ヒルベルト空間充填曲線を適用して、3次元セル座標を1次元スカラー値にマッピングし、曲線の連続性と局所性保持特性により空間的局所性を維持する。
  • 1次元ヒルベルト曲線をNp個の等間隔の区間に分割する(NpはMPIプロセス数)。各区間内のすべてのセルを1つのプロセスに割り当てる。
  • 1次元分割モジュールを用いて、各MPIプロセスが可能な限りバランスの取れたワークロードを受け取ることを保証し、負荷の不均衡を最小限に抑える。
  • 3次元グリッド座標を1次元ヒルベルト値に効率的に変換するマッピングカーネルを実装し、高速かつスケーラブルな分割を可能にする。
  • HSFC分割手法を並列リザーバー・シミュレータに統合し、実世界のリザーバー・モデルにおけるパフォーマンスとスケーラビリティを評価する。

実験結果

リサーチクエスチョン

  • RQ1ヒルベルト空間充填曲線手法は、大規模リザーバー・シミュレーションにおいて、ParMETISのようなグラフベースの分割手法と同等のロードバランシング品質を達成できるか?
  • RQ2数千のMPIプロセスにわたるHSFCベースの分割手法の実行時間と通信効率のスケーリング特性はいかがなっているか?
  • RQ3リザーバー・シミュレーションワークロードにおけるニュートン法と線形ソルバーの収束挙動に、分割手法が与える影響は何か?
  • RQ4分割時間、通信量、全体のシミュレーション時間の観点から、HSFC手法はParMETISに比べてどの程度優れているか?
  • RQ5構造的グリッドシミュレーションにおいて、HSFC手法は空間的局所性をどの程度保持し、プロセス間通信を最小限に抑えられるか?

主な発見

  • IBM Blue Gene/Q上で最大4,096個のMPIプロセスを用いて、HSFC手法は線形スケーリングを達成した。プロセス数を2倍にした際、シミュレーション時間は半減した。
  • 50億セルのグリッドにおいて、全体の実行時間は512プロセスの1,504.32秒から4,096プロセスの193.52秒にまで短縮され、強いスケーリングが確認された。
  • ニュートン法と線形ソルバーは、すべてのプロセス数において一貫した収束挙動を示し、計算の安定的かつバランスの取れた分散が実現された。
  • 分割時間はほぼ線形にスケーリングしたが、1次元分割ステップを1つのMPIプロセスが処理していたため、理想よりわずかに劣った。
  • グリッド生成、線形システムの構築、および解法フェーズは優れたスケーリングを示し、GMRES(30)ソルバとRASプリコンディショナは高い効率を維持した。
  • HSFC手法はParMETISと同等の分割品質を達成しており、大規模リザーバー・シミュレーションにおいて、複雑なグラフ分割ツールの実用的で単純な代替手段として有効である。

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

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

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

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