2021年10月20日水曜日

コレスキー分解の並列化

Eigen: Catalogue of dense decompositions

また、ベンチマークは、

https://eigen.tuxfamily.org/dox-devel/group__DenseDecompositionBenchmark.html

です。

現時点で、Eigenのコレスキー分解LDLTは、マルチスレッドに対応していません。またランク落ち(Rank-Revealing)についても、対応がありません。やはり自分で書くしかなさそうです。

コレスキー分解については、

1)コレスキー分解 - Wikipedia

2)コレスキー分解 - PukiWiki for PBCG Lab (tsukuba.ac.jp)

3)修正Cholesky分解 (coocan.jp)

4)main.dvi (kyushu-u.ac.jp)

を参照しました。

また、NSPの制約マトリクスは、基本的に疎行列です。正定対称化により、疎行列を維持できなくなる可能性が強いのですが、出来れば、そのままコレスキー分解をすることが望ましいです。従い、設計仕様は、

■SIMD化(Target AVX2)

■Multi thread化

■疎行列対応

■ランク落ち対応

を実現する修正コレスキー分解となります。

上の参照資料4)を見て思ったのですが、リニアソルバの核は、連立一次方程式の解法そのものです。取り掛かる前に見ておくべきでした。




0 件のコメント:

コメントを投稿