2

インテル® MKL ライブラリーは最適化されたスレッド化された関数のセットを提供しますが、反復疎ソルバー (ISS) の場合、前処理付き共役勾配法はスレッド化するのが簡単ではないようです。

より正確に言うと、不完全コレスキー分解や ILU などの前処理手法を使用すると、ある時点でスパース三角ソルバーが必要になりますが、三角解を実行するための対応する MKL 関数mkl_cspblas_?csrtrsvはスレッド化されません。私の質問は、マルチコア プロセッサで現在のバージョンの MKL (完全にスレッド化されていない) を打ち負かすスパース ソルバー ライブラリがあるかどうかです。

4

1 に答える 1

1

それが MKL に勝るかどうかはわかりませんが、これは研究プロジェクトなので、PETSc の混合モードのOpemMP+MPI ブランチが利用可能です。私のグループが行った SpMV 実装の実験では、単純な行列に対しては適切にスケーリングされましたが、定期的に扱うより複雑な行列に対してはそうではありませんでした。問題によっては、運が良くなる場合があります。

于 2014-01-31T23:07:50.773 に答える