本節では,
Schur 方程式の求解を並列計算する方法について説明する.
すなわち,Cholesky分解の並列化を行うのであるが,
これについては既存の多くの研究が存在する.
ここでは,定評ある
並列数値計算ライブラリーであるScaLAPACK[3]の
並列Cholesky分解によって実現することにする.
その場合,
係数行列
はブロック巡回分割によって,
各計算機に割り当てられる.
図3の右図は,
大きさ
の係数行列
を
つの計算機で並列計算する場合の,
ブロック巡回分割による行列の分割状況を示している.
ある程度大きなサイズのSchur方程式を解く場合, 次のような結果が期待できる.
元 | 新 | ||
係数行列
![]() |
![]() |
||
Schur方程式の求解 |
![]() |
![]() |
計算機の台数に反比例 |
![]() |
![]() |
||
変数などの保持 |
![]() |
||
係数行列
![]() |
![]() |
![]() |
計算機の台数に反比例 |