強力なシミュレーションエンジン
第2号である今回は、シミュレーションエンジンの要であるマトリクスソルバーに焦点をあて、JMAGがどのように高速化を実現したのかをご紹介します。
4年で5倍の高速化
設計開発現場における徹底した効率化やコスト削減の流れを受け、高速化に取り組んでいるJMAG。多くの解析対象において解析時間の短縮に成功しました。
高速化実現は様々なアプローチにより実現されています。代表的なものとしては、アルゴリズムの改良や演算処理の改善、並列処理の導入などが挙げられます。図1にJMAGのバージョンの違いによる解析時間の変化を示します。Ver.8.3に比べ、Ver.9.1では解析時間が5分の1に短縮されています。時間短縮率は解析対象によって違いがありますが、JMAGはこの4年で5倍もの速度向上を成し遂げました。
図1 JMAGのバージョンの違いによる解析時間の変化 [1]
速くなければ意味がない
なぜ私たちは高速化を実現しようと考えたのか。その理由は、顧客ニーズによるものです。
近年、CAEツールの使用頻度は増加しています。計算機の性能向上に加え、設計プロセスに解析が取り込まれ始めたからです。この背景には、製品開発競争の激化があり、現場では試作回数の低減や開発期間短縮が求められるようになりました。あるレポートによれば、自動車設計における設計期間はこの10年で40%短縮されています。
JMAGは業務効率化やコスト削減のために導入されています。お客様のニーズに応えるためには高速化が必要不可欠なのです。速くなければ意味がない、私たちはそう考えています。
処理時間がかかるICCG法に並列処理
高速化を実現するために、JMAGに並列処理を導入しました。
なぜ、並列化に取り組んだのか。それは、最も時間を要するのが一次方程式の求解を行うマトリクスソルバーだからです。弊社の調査によると、ICCG法による求解は計算実行時間の80-90%を占めています。そこで、JMAGはICCG法にSMP(共有メモリ型)並列処理を導入し、処理時間の短縮を図りました。図2は並列化による高速化の実績です。8並列の場合、非並列(並列度数1)に比べて3-4倍速度が向上しています。なお、本結果はIntel®Xeon5500番台のQuad Core CPUを2個搭載したハードウェアを使用した結果です。
図2 並列化による高速化例 [2](左:解析モデル、右:高速化比)
ロバストな並列ソルバー
ハードウェアに対しても解に対してもロバストであることを重要視したJMAG並列ソルバー。どのようにロバスト性を実現したのか、3つの視点から見てみます。
(1) 多くのハードウェアで最適パフォーマンス
ハードウェア構造の違いによって、並列化性能は変わってしまいます。多くのハードウェアでパフォーマンスを出すためにはどうしたらいいか。やはり豊富な試験とチューニングが必要です。
私たちはハードウェアベンダと協力して最新ハードウェアの調査および試験を重ねています。JMAG Users Conference 2008では、住商情報システム株式会社様にJMAGのICCGソルバーを例としたマルチコアの現状と将来についての分析結果をご講演いただきました。また、図3に今までに弊社が調査を行ったハードウェアを示します。並列化による効果が見込める9種類のCPUの内7種類に対して既に試験を実施しています。
図3 並列化の調査を実施したハードウェア
(2) 解の安定性を重視
いくら高い並列性が達成できたとしても、解が得られなければ意味がありません。JMAGは安定性を何より重視しています。
JMAGのマトリクスソルバーは高い収束性を得るための工夫が凝らされています。この優れた特性を生かしつつ並列化による速度向上が達成できていることを確認するために、多くの試験を行いました。モータから磁気ヘッド、バスバー、電磁石などの幅広い解析対象および静解析から過渡応答解析、周波数応答解析などの多様な解析において速度向上を確認しています。
(3) 並列度数を考慮したアルゴリズムの採用
並列処理では、並列度数(使用するコアの数)によって適するアルゴリズムが異なります。例えば、コア数が少ない時に高い高速性能をもつ並列処理でも、あるコア数を超えると性能が落ちてしまったりします。そのため、お客様の環境に合わせてアルゴリズムを選択する必要があると考えました。
現在マルチコアにおける並列度数は比較的少なく、多くのマシンが最大でも8コア対応となっています。JMAGでは少ない並列度数に合ったアルゴリズムを採用しています。
ハードウェアの進歩と並列化
このような並列化技術導入は、ハードウェアのマルチコア化の影響を受けています。近年、Intel®,AMDに代表されるようにコンピュータプロセッサはマルチコア化が進み、並列処理に適したハードウェアが多く発表されています。今までのように、CPU動作周波数の増加には期待できないため、ソフトウェア開発においてマルチコアの有効利用が重要であるという認識は広がりつつあります。
JMAGの高速化は止まらない
これからもコンピュータプロセッサのマルチコア化は進んでいくでしょう。この流れにのり続けるためにマシンパワーを生かしたソフトウェア開発が重要です。
私たちは並列ソルバーの開発はもちろん、非線形解法の改良など、さらなる高速化を実現するために様々なアプローチを実施しています。CAEツール自身がものづくりをすることはありません。しかし、お客様にCAEを使ってよりよいものづくりをしていただくために、JMAGは最速の電磁界解析ソルバーを目指します。
次号はメッシュ生成エンジンについて、求められるニーズとそれに対応した開発内容をご紹介します。
[1] : JMAG Users Conference 2008 ポスターセッションより
[2] : 弊社調査結果より
[JMAG Newsletter 2009年6月号より]