2011-09-11 13 views
0

速度と使いやすさの点で、どのC++ライブラリ(またはC++インタフェースを備えたFortranのライブラリ)でBLASまたはBLAS演算を分散行列で実行することをお勧めしますか?グリッド上の分散行列を扱うためのC++ライブラリ

+0

私はMPIがこのようなタスクの標準だと思いましたか? – Nobody

+0

@Nobody:PBLASは分散基本線形代数の標準です(PBLASの上に構築された「あまり基本的でないアルゴリズム」のためのSCALAPACKを持っています)。 MPIは、BLACSサブルーチンを通じて、PBLASの基盤にあります。 –

答えて

3

PBLASを直接使用してください。私はこれを簡単にするためにC++ライブラリを知ることはありません。 http://cppscalapack.sourceforge.net/がありますが、これ以上メンテナンスされていないようです(2004年の最終更新)。

分散線形代数は非常に面倒であり、使用するライブラリが何であれ、多くの作業が必要になります。したがって、PBLASを直接使用することで、クラスの計算を抽象化することは非常に賢明なことです:Fortranインターフェイスを理解することは、問題の難しい部分ではありません。

+0

ありがとうアレクサンドル。 MKLのPBLASを使用すると、MKLのC++でBLACSインターフェイスを見つけることができません。この場合、BLACSの代わりにMPIを使用できますか? – Tarek

+0

BLACSはnetlibにあり、PBLASとMPIの間のレイヤーとして機能します。 –

+0

TrilinosとPetscについてどう思いますか? – Tarek

関連する問題