高速・高安定型マトリクスソルバライブラリ Super Matrix Solver

SMS-BEM FAQ & TIPS

FAQ

なぜデータはcolumn方向ではなく、row方向なのですか?
なぜSMS_MTX_FILEに直接マトリクスファイル名を入れないのですか?
係数行列Aが変化しないようなときに、前処理結果を残しておけますか?
解の初期値を与えることはできますか?
単精度版はありますか?
Out of Coreで計算する場合、最低限必要なメモリはどのくらいですか?
Out of Coreで計算する場合、ファイルフォーマットはどのような形式になりますか?

なぜデータはcolumn方向ではなく、row方向なのですか?
【答】
弊社の他のソルバのデータがrow方向であるため、フォーマットを合わせています。

なぜSMS_MTX_FILEに直接マトリクスファイル名を入れないのですか?
【答】
環境変数SMS_MTX_FILEに直接ファイル名を書くと、Out of Coreのマトリクスファイル名が変わる場合に 環境変数の内容をプログラムから変更する必要が生じます。一方、環境変数SMS_MTX_FILEでマトリクスファイルを指定するための ファイルを指定する方式であれば、指定したファイルの内容を変更すれば読み込むマトリクスファイルを変更できます。 ユーザにとって、後者のほうが容易と判断し、本方式としました。

係数行列Aが変化しないようなときに、前処理結果を残しておけますか?
【答】
はい、できます。お客様のご要望に応えて、Version 2でこの機能が追加されました。

解の初期値を与えることはできますか?
【答】
はい、できます。お客様のご要望に応えて、Version 2でこの機能が追加されました。

単精度版はありますか?
【答】
ありません。また、今のところ、開発の予定もありません。

Out of Coreで計算する場合、最低限必要なメモリはどのくらいですか?
【答】
最低限のメモリサイズは、おおよそ下式で計算できます。 12000 × 元数 [Byte] 例えば、11500元の問題では12000×11500 = 138000000バイト(=131.6MB)必要です。 環境変数SMS_MEM_MAXでは、上式で計算される値より大きな値を指定してください。 ただし、SMS_MEM_MAXを可能な限り大きくしておいたほうが、ファイルとのアクセスが減り、計算が速くなります。

Out of Coreで計算する場合、ファイルフォーマットはどのような形式になりますか?
【答】
ファーマットは、Fortran Unformatted(バイナリ)です。また、行単位で出力してください。

TIPS

環境変数の設定

環境変数の設定

・ Windowsで環境変数にフルパスを指定する場合、ドライブ名後の'\'を省くとうまく動作しません。
例)(×)C:CAE\SMSBEM\work → (○)C:\CAE\SMSBEM\work

・ Out of Coreで計算する場合、SMS_WORK_DIR、SMS_MTX_FILEには、ローカルディスク上のフォルダ、ファイルを指定してください。 ネットーワークで接続されたディスク上のフォルダ、ファイルを指定すると通信負荷が掛かり計算速度が遅くなります。



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