Super Matrix Solver 高速・高安定型マトリクス計算ライブラリ

高速・高安定型マトリクス計算ライブラリ
Super Matrix Solver

      AMG法をベースにした高速・高安定型ソルバ
      Super Matrix Solver SMS-AMG


ソフトウェア・プロダクト・オブ・ザ・イヤー2003受賞



SMS-AMGの特長

■最高速の反復法として知られているAMG(Algebraic Multigrid)法を当社SMS技術で更に高速・安定化しました。
■従来の反復法では計算が困難な問題を計算することができます。
■大規模な問題を高速に計算することができます。
■係数行列が対称の場合、行列の半分のみで計算可能です。
■係数行列が同じ問題を繰り返し計算する場合、2回目以降の計算ではAMGの前処理を省略可能です。
■実行形式(DLLなど)で提供-容易に組込可能-数学知識は必要ありません。

AMG法とは

■AMG(Algebraic Multi-Grid=代数的マルチグリッド)法とは係数行列の情報から仮想格子を作成し、数値情報から仮想格子点の間引きを行い、多重格子系を作成することで計算を加速する手法。
1980年~90年に考案された極めて高速な計算手法であるが、次の問題がありました。
・ プログラムが複雑である
・ パラメータが多く、利用するのが難しい
・ 動作が不安定である
ヴァイナスはAMG法を改良するとともに、独自のSuper Matrix Solver技術を適用することでより、このAMG法を高速・高安定化しました。
それが、Super Matrix Solver-AMGです。

SMS-AMGの性能



SMS-AMGの概略仕様

項目 内容 備考
対象とする解析分野 流体解析・電磁解析、構造解析など 構造解析ではSolid要素を用いた解析に対応しています
対象とする係数行列 有限要素法、有限体積法、差分法などの離散化手順により作成される疎行列  
対角に0要素のある問題 計算不可 対角要素の優対角性が必要
問題規模の制限 なし 利用可能なメモリ量による
要素のデータ型 実数(倍精度) 複素数は対象外
問題の対称性 非対称問題も計算可能  
一節点に複数物理量が 存在する問題 計算可能 構造解析におけるShell要素、電磁場解析における辺要素などの計算は不可
入力データ 係数行列、右辺定ベクトル、収束判定条件、最大反復回数、その他 係数行列が対称の場合、上三角のみで計算可能
出力データ 解ベクトル、達成相対残差、実反復回数、その他  
エラーメッセージ 戻り値としてワーニング、エラーメッセージを返す。 (計算情報、システム情報など)  
提供方式 DLL形式(WINDOWS)、 スタティックライブラリー形式(Linux) ソースコードは開示しません
付属資料 説明書(データフォーマット/パラメータ/組込手順などの説明資料)、サンプルデータ,Super Matrix Solver-AMG組込用サンプルプログラム (C,FORTRAN)  

動作環境

  Windows Linux
32ビット 64ビット 32ビット 64ビット
XP/2000 XP x64 IA32 EM64T/AMD64
Version 3 (詳細)

 ○:対応済み、-:未対応

CFDソルバ(CAEソルバ)とSuper Matrix Solverの関連

CAE/CFDソルバとSuper Matrix Solverの関連については図1をご確認ください。 「Solver(ソルバ)」という名前から、Super Matrix SolverをCAE/CFDソルバなどと混同されるケースがありますが、Super Matrix Solverは連立一次方程式を解く数学ルーチンです。 図1からわかるように、CFDソルバなどに組み込み、マトリクス(連立一次方程式)の計算を行うためのものです。

 

Super Matrix Solverのベンチマーク方法

Super Matrix Solver(SMS)のベンチマーク方法には 二通りの方法があります。

方法1:ユーザーのマトリクスデータを使用してヴァイナスでベンチマーク計算を行う
Super Matrix Solverのベンチマーク計算に使用するのは図2のMatrix計算(Solver)部分に渡される行列データです。

 
Ax=b で表現される連立一次方程式において係数行列Aと右辺ベクトルbがMatrix Solverに渡り、解xベクトルがMatrix Solverから返されます。 ヴァイナスでSuper Matrix Solverのベンチマークを実施する場合、このA,bがベンチマークデータとして必要になります。 (実際には、収束条件や反復回数なども設定する必要があります。)

ユーザーのマトリクスデータを使用してヴァイナスでマトリクス計算を行う場合の手順

1)テストデータを作成ください。
配列データ({A},{b})を2~3組程度抽出下さい。 性能確認のためには、「できるだけ大きい」あるいは「解き難い(時間のかかる)」行列 が望ましいのですが、平均的な性能確認のために一般的な規模の(一般的な)行列も準備下さい。

2)オリジナルのソルバで計算し、処理時間を計測ください。
現在ご利用のソルバと性能を比較するため、現状のソルバで計算開始(ファイル読込み)から、収束条件を満足するまでの計算時間を0.1秒単位以下で計測下さい。

3)( 2)項の)行列データを送付ください。(フォーマットについては別資料を参照下さい。)
その際Super Matrix Solverとの性能比較のため、
①計算結果 (行列{x})
②計算時間情報
③収束判定条件 (例:相対残差のL2ノルムで表示など) も送付下さい。

4)当社Super Matrix Solverで計算し、処理時間と計算結果をレポートで報告します。

留意事項

ベンチマークに際し以下の事項が重要なポイントです。

1)行列データ{A}、{b}の抽出が可能か? CFDソルバによってはMatrix Solverがモジュールとして独立しているもの(サブルーチン化されているなど)と、CFDソルバ本体に渾然一体に組み込まれているものがあります。
独立したMatrix Solverを持つTypeについては引数などでMatrix Solverに渡される引数から 配列 {A},ベクトル{b}を抽出下さい。 完全に組み込まれている場合は、ソースを変更し、配列 {A},{b}をファイルにダンプできるにして下さい。

 
2)オリジナルのMatrix Solver(現状使用しているソルバ)を使い単独での計算時間計測が可能ですか?Matrix Solver単独での性能を比較するのに必須の情報です。

3)CFDソルバ全体処理時間のうち、Matrix処理とNon-Matrix処理の時間割合が計測できるか? CFDソルバ全体での時間短縮度合いを推定するために必要な情報です。 右例では全体の約60%がMatrix処理になっているので これを、1/3に短縮できた場合、
(非Matrix処理40%)+(Matrix処理60%×1/3) =60%
に処理時間が短縮できます。

方法2:Super Matrix Solverの評価版をユーザー自身でターゲットソルバに組み込むの手順
評価版を使用し、組込性能を確認頂くことができます。 但し、Super Matrix Solver用にデータの変更、さらに引数を渡せるようにプログラムを変更する必要があります。 Super Matrix Solverの組込方法や引数については、評価版付属のマニュアルを参照ください。 組込の前には、必ず組込の可否、効果の有無について当社資料を参考にして、事前にご確認ください。

適用事例

詳細資料

■アプリケーションへの組込性能比較

■コンクリートの破壊解析
>> 北海道大学様
■原子炉炉心燃料棒流体振動挙動関連解析
>> 埼玉工業大学様
■樹脂流動解析
>> (株)プラメディア様
■電磁場解析
>> (有)ミューテック様
■超伝導体を対象とした非線形数値電磁界解析
>> 横浜国立大学様
カタログ/資料ダウンロードページに下記の資料がございますので、ダウンロードしてご利用ください。
■SMS-AMG製品情報
■Super Matrix Solverを組み込む前に
■Super Matrix Solver FAQ
■Super Matrix Solverベンチマーク用データフォーマット

また、お問い合わせ時には、下記ヒアリングシートをご利用頂ければ幸いです。
Super Matrix Solverヒアリングシート(WORDファイル/198KB)

(注)本資料は性能を保証するものではありません。また仕様は無断で変更される場合があります。

SMS-AMG関連論文

1.田村敦宏,菊地一雄,高橋匡康
 だ円形境界値問題の数値解法―残差切除法について(ポアソン方程式への適用),
 日本機械学会論文集(B編)62巻604号(1996-12) 4076-4083)

2.Atsuhiro Tamura, Kazuo Kikuchi, Tadayasu Takahashi
 Residual Cutting Method for Elliptic Boundary Value Problems:Application to Poisson's Equation,
 Journal of Computational Physics, Vol. 137, No.2, November 1997, 247-264.

3.Yuichi MATSUO, Takeshi IWASHITA, Koji TANIGUCHI, Akihiro IDA
 Developing a Parallelized Matrix Solver of the Residual Cutting Method by using AMG as an Inner Solver,
 Transactions of Japan Society for Computational Engineering and Science,No.20090018(2009)

4.Takeshi Iwashita, Masaaki Shimasaki
 Algebraic Multi-Color Ordering for Parallelized ICCG Solver in Finite Element Analyses,
 IEEE Transaction on Magnetics,Vol. 38-2, 2002, 429-432.

ページの先頭へ