RESP-Dには計算オプションとしてマルチスレッド機能やマトリックス計算ソルバの設定があり、最近複数ケースを並列計算させるプロセス分割の機能も実装されました。

今回は30階建てと50階建ての単純な耐震モデルを対象に計算オプションごとに振動解析の時間を測定してみた結果を紹介します。

計測PCの性能

プロセッサ:Intel Core i7-9700

実装メモリ:16GB

 

モデル条件

30階および50階 RC造

スパン 5×5 6mピッチ

 

解析条件

 振動解析

非線形特性:

柱:ファイバーモデル

梁:M-θ(材端剛塑性バネ)

解析ケース① Elcentro-NS 50kine X方向(30秒)

解析ケース② Elcentro-NS 50kine Y方向(30秒)

積分時間間隔 1/400秒

 ※振動解析前に解析モデルの質量及び初期応力で必要な荷重拾い及び長期荷重・地震荷重の弾性解析も事前解析として実施します

 

 

検証する計算方法

 ①デフォルト解析

スレッド数:1
プロセス数:1
マトリックスソルバ:Skyline

RESP-D初期設定の計算です。

 ②マルチスレッド

スレッド数:4
プロセス数:1
マトリックスソルバ:Skyline

RESP-Dの「オプション」から各計算時のスレッド数を4に変更した計算です。

 ③複数プロセス

スレッド数:1
プロセス数:2
マトリックスソルバ:Skyline

RESP-Dの「オプション」から「解析時、複数プロセスで実行」にチェックを入れ、
プロセス数を2に変更した計算です。

今回の場合ではX方向とY方向の2つの解析を並列的に計算します。

 ④複数プロセス + Sparseマトリックス

スレッド数:1
プロセス数:2
マトリックスソルバ:Sparse

③の設定からマトリックスソルバをSparseマトリックスに変更して計算します。

 ⑤複数プロセス + IntelPardisoマトリックス

スレッド数:1
プロセス数:2
マトリックスソルバ:IntelPardiso

③の設定からマトリックスソルバをIntelPardisoマトリックスに変更して計算します。

測定結果

 

 

デフォルト
スレッド1
1プロセス
Skyline
マルチスレッド
スレッド4
1プロセス
Skyline
複数プロセス
スレッド1
2プロセス
Skyline
複数プロセス
スレッド1
2プロセス
Sparse
複数プロセス
スレッド1
2プロセス
IntelPardiso
30Fモデル 19分52秒

(19分29秒)

18分38秒

(18分17秒)

9分48秒

(9分17秒)

10分26秒

(10分4秒)

11分2秒

(10分39秒)

50Fモデル 31分12秒

(30分51秒)

28分59秒

(28分30秒)

15分32秒

(14分58秒)

18分37秒

(18分2秒)

18分11秒

(17分33秒)

※()内の数値は荷重計算や長期解析を除いた振動解析のみの時間

マルチスレッド化の影響は今回のモデルでは非線形性の強い部材も少ないからか、計算速度の高速化はわずかなものとなりました。

複数プロセスでの解析は並列的な計算を行うため、当たり前ではありますが、かなりの高速化が見込めることが分かります。

SkylineとSparse、IntelPardisoについては30Fモデル、50FモデルいずれもSkylineのマトリックス計算法が今回は計算が早い結果となりました。

 

今回は単純なモデルでの計算速度の測定を行いましたが、免震や制震などの複雑なモデルやより規模の大きいモデル、質点系や静的解析についての計測も今後行っていきます。

 

 

今回使用したソフト RESP-D


時刻歴応答解析による設計を支援する統合構造計算プログラム

詳細はこちらから

 

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です