2021 Fiscal Year Research-status Report
高性能で安定な大規模並列反復法アルゴリズムの研究開発
Project/Area Number |
21K17748
|
Research Institution | Osaka University |
Principal Investigator |
桝井 晃基 大阪大学, 情報科学研究科, 助教 (70897793)
|
Project Period (FY) |
2021-04-01 – 2024-03-31
|
Keywords | 反復法 / 疎行列演算 / 大規模電磁場解析 / 前処理 / 高速化 |
Outline of Annual Research Achievements |
本研究では,辺要素有限要素法による時間調和渦電流解析や高周波電磁場解析で現れる大規模複雑な複素対称線形方程式の求解を高速化することを目的として,今年度は主に前処理手法に着目し,大規模電磁場問題向けの前処理付き反復法を実装し,その性能を評価した.さらに,効率の良い計算手法を確立した. 具体的には,一般的な反復法の前処理ではフィルイン無しのIC前処理が広く使われているが,今回は悪条件問題に有効とされるフィルイン付きのIC前処理を実装した.さらに,対象となる問題が大規模疎行列であったため,係数行列の非ゼロ要素位置に着目した効率の良い前処理手法を開発した.そして大規模電磁場問題の反復法に適用したところ,反復回数と計算時間を従来手法の半分以下に削減することに成功した.また,問題の種類を変えて実験したところ,特に高周波問題においては提案手法がほぼすべてのパターンで有効であるということも判明した. また,前処理に含まれるパラメータの最適値の推定手法についても検討を行なった.推定方法については,今回は分割した小行列を用いた手法を提案し,性能を評価した.その結果,最適,もしくはそれに近い値を推定することができ,有用な時間内で安定的に解を求めることに成功した. さらに,開発したシステムを実際の電磁場解析ソフトウェアである,オープンソースソフトウェアのADVENTURE_Magneticに組み込んで性能評価を行なった.このソフトウェアは内部で反復法を計算しており,この前処理部分に上記の数値実験で有効であった手法を組み込み,性能評価を行なった.その結果,実際のソフトウェアにおいてもシミュレーション時間を削減し,有効であることが示された.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
これまで,大規模電磁解析問題における反復法について,最適な前処理手法やそれに含まれるパラメータの最適値は不明であり,最適な手法は確立されていなかった.これに対し,今年度は高性能で安定な大規模並列反復法の開発を目指して,主にアルゴリズムの開発や実装を行った.開発したアルゴリズムは今回対象としている大規模電磁場解析問題の向けの反復法の計算時間を短縮し,有効であることが示された.また,複数の問題に対して条件を変えて実験したときにおいても有効性を確認できた.今回実装した手法を今後並列化していく予定である. さらに,実際の電磁場解析ソフトウェアにも組み込んで性能評価をしたところ,有効であるということが示された.これまで実用的なソフトウェアについて有効であるという研究例は無い.つまり,これらの成果は学術上の新規性のみならず,実用性も認められるものである.このことから,本研究は期待通りに進展したと判断できる.
|
Strategy for Future Research Activity |
今後は,実装した手法について並列化や最適化などの高速化を行なっていく.これまでに実装した手法の大部分は逐次計算であり,OpenMPなどの簡単な並列化しか行っていない. この反復法において計算時間の大部分を占めているのは行列ベクトル積演算や前処理計算であり,行列ベクトル積演算は依存関係が無いため簡単に並列化可能であるが,前処理演算は前進後退代入で依存関係があるため,並列化するためには工夫が必要である.そこで,電磁場問題の行列の形状に合わせた並列化を検討し,実装を行っていく.さらに,今回の問題は複素数問題であるので,効率の良い複素数演算についても考察をしていく.さらに,倍精度と倍々精度を用いた混合精度演算についても実装を進め,今回開発した前処理手法と組み合わせることでさらなる高速化を目指していく. また,最適な加速係数の推定についても先行研究の手法を参考に,実装し,数値実験を行っていく.数値実験で有効であると判明した手法については,実際のソフトウェアへの組み込みも検討する. また,ADVENTURE_Magneticに組み込んで計算時間という面では有効性を示すことができたが,可視化までの評価は行っていないため,シミュレーション全体における性能の評価をしていく.さらに,実験を行った問題についても,周波数や導電率などいった設定を変えることで,網羅性を高めていく. さらに,これらの成果をまとめ,学術論文誌にも投稿していく.
|