Skip to main content
QUICK REVIEW

[論文レビュー] Computing the R of the QR factorization of tall and skinny matrices using MPI_Reduce

Julien Langou|arXiv (Cornell University)|Feb 23, 2010
Interconnection Networks and Systems参考文献 3被引用数 11
ひとこと要約

本論文は、ユーザー定義の短縮演算を用いて、高さが広さよりも大きい行列のQR分解におけるR要因を計算する、高水準でポータブルなMPIベースの手法を提示する。QR更新を木構造上の結合的かつ可換な短縮演算としてモデル化することで、MPI_Reduceを活用し、分散システム全体で計算を効率的に並列化し、特に通信を回避する文脈において、従来のScaLAPACK実装よりも優れたパフォーマンスを達成する。

ABSTRACT

A QR factorization of a tall and skinny matrix with n columns can be represented as a reduction. The operation used along the reduction tree has in input two n-by-n upper triangular matrices and in output an n-by-n upper triangular matrix which is defined as the R factor of the two input matrices stacked the one on top of the other. This operation is binary, associative, and commutative. We can therefore leverage the MPI library capabilities by using user-defined MPI operations and MPI_Reduce to perform this reduction. The resulting code is compact and portable. In this context, the user relies on the MPI library to select a reduction tree appropriate for the underlying architecture.

研究の動機と目的

  • 分散環境におけるQR分解のR要因を計算するポータブルで効率的な手法を提示すること。
  • 高さが広さよりも大きい行列のQR更新操作が、二項の結合的かつ可換な短縮演算としてモデル化できるかどうかを示すこと。
  • ユーザー定義演算を用いたMPI_Reduceが、低レベルの木構造管理を必要とせず、スケーラブルかつアーキテクチャに適応した計算を可能にすることを示すこと。
  • 通信を回避するアルゴリズムと標準的なScaLAPACKアプローチの間のパフォーマンス比較を提示すること。
  • この短縮演算をMPIの標準的で再利用可能なプリミティブとして採用することを提唱すること。

提案手法

  • 高さが広さよりも大きい行列のQR分解を、上三角行列Rの木構造上の短縮演算としてモデル化する。
  • 各短縮ステップでは、2つのn×n上三角行列を垂直に連結したもののQR分解により、1つのR要因に統合する。
  • 短縮演算はR := qr(R₁, R₂)として定義され、ここでqrは[R₁; R₂]のR要因を計算する。この演算は結合的かつ本質的に可換であることが証明されている。
  • 実装では、カスタムMPI_Opを用いたMPI_Allreduceを用い、ユーザーから木構造を抽象化する。
  • このアプローチは、局所的なQR分解にLAPACKのDGEQRFを、グローバル同期にはMPIの短縮機能を活用する。
  • 二分木、フラット木、またはネットワークトポロジーに適応した木構造を任意にサポートし、パフォーマンスは下位のMPIの木選択に依存する。

実験結果

リサーチクエスチョン

  • RQ1高さが広さよりも大きい行列のQR分解を、木構造上の短縮演算として表現できるか?
  • RQ2R要因を結合する二項演算が、MPIにおける任意の短縮木構造をサポートするほど結合的かつ可換であるか?
  • RQ3MPIベースの短縮と手でコーディングされた短縮木、および標準的なScaLAPACK QR分解のパフォーマンスはどのように比較されるか?
  • RQ4MPI_Allreduceのような高水準のMPIプリミティブを用いて、通信を回避するアルゴリズムを効率的かつポータブルに実装できるか?
  • RQ5分散環境において、伝統的なハウスホルダーQRに比べて、通信を回避する短縮戦略を用いることでどの程度のパフォーマンス向上が達成できるか?

主な発見

  • 提案された短縮演算は数学的に整合的で安定しており、R要因は対角成分の符号変更を除いて一意である。
  • この演算は符号を除いて結合的かつ可換であり、MPIにおける任意の短縮木構造での使用が可能である。
  • 2行のMPI_Allreduceベースの実装は、100万×50行列に対して256プロセッサで414 MFlop/sec/procの性能を達成し、ScaLAPACKのPDGEQRx(184 MFlop/sec/proc)を上回った。
  • TSQRの手でコーディングされた二分木バージョンは610 MFlop/sec/procを達成し、MPI_Allreduceバージョン(392 MFlop/sec/proc)を上回った。これは、MPIの木選択が最適でない可能性を示唆している。
  • MPI_Allreduceと手でコーディングされた木構造の間のパフォーマンス格差は、通信を回避するアルゴリズムにおいて、木構造に注意を払う重要性を強調している。
  • この手法は、アーキテクチャを問わず強いスケーラビリティとポータビリティを示しており、MPIが下位のネットワークおよびメモリ階層に適応する仕組みに依存している。

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

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

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

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