GPU アクセラレーションによる環境シミュレーションはスーパーコンピューターを上回るパフォーマンスを実現
- 博士課程の学生が、GPU で複雑なシミュレーションを実行するゲーム テクノロジーを開発します。
- このシミュレーションには、巨大な海の波が洋上風力タービンに衝突することが含まれます。
- GPU でのダムブレイク シミュレーションは、16 スレッド CPU の実行時間よりも最大 4.5 倍高速に実行されました。
マンチェスター大学で博士号取得を目指している Alex Chow は、グラフィック プロセッシング ユニット (GPU) 上で複雑な工学および科学シミュレーションを実行するプログラムを構築しました。
これまでのところ、ハイエンドのグラフィック カードは、PC、ラップトップ、ゲーム コンソールでリアルなビジュアルと高速なゲームプレイを作成するために使用されています。しかし現在、GPU は複雑なシミュレーションを高速化するテクノロジーとして台頭しており、いくつかのアプリケーションを従来の CPU よりも 100 倍以上高速に実行します。
最終的な目標は、スーパーコンピューターの代わりにグラフィック カードで大規模なシミュレーションを実行することです。スーパーコンピューターは並列接続された数百個の CPU で構成されているため、数十億回の計算を実行すると大量の電力を消費します。また、それらは非常に高価であり、少数の科学者や研究者しか利用できません。
一方、GPU はエネルギー効率が高く、従来のスーパーコンピューターよりもはるかに安価です。部屋全体や専用の施設は必要ありません。実際、最新のグラフィック カードはラップトップに収まるほどコンパクトです。
これまでにどのようなシミュレーションが実行されましたか?
Chow は、強力なグラフィック カード上で激しい流体の流れの大規模なシミュレーションを作成できるソフトウェアを開発しました。このシミュレーションでは、構造物にかかる力(潜在的な衝撃を含む)をより詳しく調査するために、巨大な波を洋上風力タービンに衝突させることが含まれます。
彼はどのようにしてそれを行ったのでしょうか?
このソフトウェアは、平滑粒子流体力学 (SPH) モデルに基づいた DualSPhysics というオープンソース コードを使用して開発されています。このコードにより、複雑なシミュレーション (激しい流体力学的な流れなど) を GPU 上で実行できるようになります。単一のデバイス上で 3D 科学アプリケーションの数百万のデータ ポイントの計算を処理できます。
Chow にとって最も困難な部分は、シミュレーション中に急速に変化する数百万の方程式からなる数学系を同時に解くことでした。
参照:ScienceDirect |土井:10.1016/j.cpc.2018.01.005 |マンチェスター大学
技術的な詳細
非圧縮性 SPH は、圧力ポアソン方程式 (PPE) を高速に実装するために、弱圧縮性 SPH コードを最適化し、ViennaCL (オープンソース線形代数ライブラリ) と統合することによって実行されます。
PPE マトリックスは、GPU の限られたメモリを最適化するために、特定の間隔でパーティクルを移動するために作成されます。非圧縮性 SPH 圧力予測アルゴリズムは 4 つの異なるレベルで実行されます。また、効率的な並列処理のために、正確で堅牢な境界条件が確立されます。
GPU 上の DualSPHysics Predictor-Corrector タイムステップの主要な繰り返しステップのフロー図
この研究では、テクノロジーの正確さ、速度、柔軟性を実証するために、多数の検証ケースが示されています。たとえば、GPU でのダムブレイクのシミュレーションは、16 スレッド CPU の実行時間と比べて最大 4.5 倍、シングルスレッド CPU の実行時間よりも最大 18 倍高速に実行されました。
このシミュレーションはどのように役立ちますか?
英国は年間電力量の 5% を洋上風力で生産しており、今後 2 年以内に 10% に増加すると予想されており、世界中で増加しています。
海洋環境は非常に過酷で暴力的な場合もあるため、海洋に対応した構造物の開発は簡単な仕事ではありません。このような環境での物理実験は非常に費用と時間がかかり、現実的ではないと言えます。
読む:光処理技術に基づく世界初のニューラル ネットワーク
これらのシミュレーションは、科学者やエンジニアが、高価な実験に投資することなく、構造の設計や産業の自由表面流体力学工学の応用について重要な手順や決定を下すのに役立ちます。
産業技術