Flowsquare+最適化作業(3)


2020年に公開予定のFlowsquare+アップデート項目である、メニーコア型のコンシューマ用CPUへの最適化作業の進捗を報告です。

2019年公開版と比較して、前回の実施したOPT2.1では、6並列までの並列性能は大きく向上しましたが、それ以上の並列数で計算速度向上率がサチる(飽和する)傾向は、2019年公開版と同レベルで確認されました。並列数を大きくとると、計算速度が向上しにくくなる特性の原因ですが、Flowsquare+のソルバーが、元々2コア~4コア程度の市販PCを対象として開発されていたためです。

下図は、公式サイトにて公開されているベンチマーク用シミュレーションケース 「F1モデルの風洞シミュレーション」 の、100ステップ目における1ステップ当たりの計算時間に基づく、並列数(横軸)と並列による計算速度向上率の関係です。現在公開中の2019R3.1、前回の最適化版(OPT2.1)及び今回の最適化版(OPT2.2)の比較です。

並列数(横軸)と並列による計算速度向上率(縦軸)のプロット。オレンジ:公開版(2019R3.1)、グレー;前回の開発版(OPT2.1)、青:今回の開発版(OPT2.2)。

ベンチマークに用いたPCは、以前の記事で紹介したRyzen 9 3900X搭載のマシンです。本CPUは、12コア24スレッドであるため、12並列まではほぼリニアに計算速度が向上するのが理想です。一方、12並列以降24並列までは、コア内の助長性等に依存すると考えられます。コア数とスレッド数の分かりやすい説明は、こちらの「CPUのクロック数やコア数とは?シェフに例えてみる」をご覧ください。

OPT2.2によって、6並列では理論性能の約85%の性能が出ており、また、12並列までの並列性能も大きく向上しました。とはいうものの、12並列ではもう少し向上の余地がありそうです。


コメントを残す

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

CAPTCHA