MUMPS — CAE用語解説
MUMPS
先生、MUMPSってFEMソルバーの中で使われてるんですか?
定義
定義を教えてください。
MUMPS(MUltifrontal Massively Parallel Sparse direct Solver)は、大規模疎行列の連立方程式を並列で直接解くソルバーだ。LU分解やコレスキー分解をマルチフロンタル法で効率的に実行する。Code_Aster、FEniCS、FreeFEM++などの内部で使われてるよ。
PARDISOとの違いは何ですか?
PARDISOはIntel MKLに含まれる直接法ソルバーで、共有メモリ(OpenMP)並列が得意。MUMPSは分散メモリ(MPI)並列に強くて、クラスター上の大規模計算向き。どちらも高性能だけど、並列環境によって使い分けるんだ。
CAEにおける位置づけ
ユーザーが意識して選ぶ必要がありますか?
オープンソースFEMを使うなら意識した方がいい。Code_AsterはデフォルトでMUMPSを使ってる。ソルバーの選択で計算時間やメモリ消費が何倍も変わることがあるから、大規模問題ではベンチマークを取って最適なソルバーを選定するのが重要だよ。
メモリ不足になることはありますか?
直接法の宿命でフィルインによるメモリ消費が大きい。100万自由度で32GB、500万自由度で128GB以上必要になることもある。メモリが足りなければ反復法(ICCG等)に切り替えるか、out-of-coreモード(ディスクを使う)にするんだ。
関連用語
関連する用語を教えてください。
直接法の精度と反復法のメモリ効率、トレードオフですね。
ソルバーのログでメモリ消費と計算時間を確認する習慣をつけると、チューニングのセンスが磨けるよ。
CAE用語の正確な理解は、チーム内のコミュニケーションの基盤です。 — Project NovaSolverは実務者の学習支援も視野に入れています。
CAEの未来を、実務者と共に考える
Project NovaSolverは、MUMPSにおける実務課題の本質に向き合い、エンジニアリングの現場を支える道具づくりを目指す研究開発プロジェクトです。
プロジェクトの最新情報を見る →関連トピック
なった
詳しく
報告