世界のスーパーコンピュータとそれを動かす人々


6月 13, 2014

エクサスケール時代のエンジニアリングコード

HPCwire Japan

Nicole Hemsoth

エクサスケールクラスのコンピュータ用の将来のアプリケーションに目を向けると、壮大な科学へのチャレンジはリストの最初のあることが多い。気候モデリングから宇宙の基盤にいたるまで、エクサスケール・コンピューティングに最も頻繁に関連する問題はその範囲の中での叙事詩である。しかし、マルチフィジックスのコードで解くことができる複雑で学際的なエンジニアリング問題は数えきれない程あるが、スケーラビリティに限界のある領域のひとつだ。

最近我々は、ある研究チームと話した際のエンジニアリング・コードをスケールする最新の進展についてレポートした。このチームは商用の明示的有限要素法コードであるLS-DYNAをBlue Watersで15,000コアまでスケールすることに成功した。これは商用コードにおける堅調な成果であったが、想像の通り、LS-DYNAを使う多くの企業は社内の多くのコアを活用できていないだろう。このスケーラビリティの努力のひとつの副作用は、15,000コアレベルで実証された高度に並列化されたコードの効率化が、多くの計算が日常システムの中に方法を発見するように、いかに大きなことを意味するのかを示すことだ。- そして、この効率化は例えば100コアから1000に最初の飛躍を行うような企業に都合がよいとも言える。

商用エンジニアリング・コード、特に複雑なマルチフィジックスのように、ひとつ以上のシミュレーション要素に付けられたコードにおける問題は、多くのコードが数十年前(またはもっと前)に、シーケンシャル・コードとして作られたものであり、それは並列で効率的に実行するために十分に叩き込まれてきたことだ。これは、バルセロナ・スーパーコンピューティング・センターのMariano Vazquezによるもので、彼はAlyaと呼ばれるBSCで開発されているマルチフィジックス・コードの2人の設計者の一人である。AlyaはBlue Watersで100,000コアまでスケールできた。- これは草分け的な業績である。

Alyaマルチフィジックス・コードは並列に効率的に実行できるように最初から構築され、多くの異なる問題を解き、プログラムの容易性を保持している。Vazquezは、大規模システム上の並列におけるスケーラビリティと効率性の違いは、この目的を念頭に構築されたコードであるかどうかであると説明している。彼は商用エンジニアリング・コードと比較して、良い例としてAnsysを指摘し、最初はシーケンシャル・コードであり、次に異なる物理問題用に取得した他のコードを付けたして、混合と並列化への主要な投資の必要性を生み出したのだ。これは大規模コア数へのコードのスケールの可能性を制限している。- しかし、彼はこれはAnsysや他のエンジニアリング・シミュレーション・ベンダーに対する重要な障壁ではないと言及している。ほとんどは100,000は言うまでもなく、1000コアで実行することはないからだ。

「我々の目標はこれらの企業と競争することではありません。」とVazquezは説明した。「我々はスーパーコンピューティング・センターであり、異なる、もっと複雑な問題を解いているのです。物理モデルでさえないし、商用コードが解決できないことも含まれています。」さらに、スケーリングの技で示したことの本当の価値は、Blue Waters上の多数のコアで並列に効率的に実行できれば、大学や企業で見られるような典型的な小規模のクラスタでも効率的に実行できることです、と彼は付け加えた。

もうひとつの利点はもちろん、メカニカル問題用のエンジニアリング・コードがエクサスケール・アプリケーションのロードマップ上に明確に位置付けされていることだ。Vazquezと仲間の研究者は、数十億要素のメッシュ数で実行される、非圧縮性流体力学、燃焼と熱流体、固体力学の他、一般的に使用されるエンジニアリング・シミュレーション問題のサブセットにおけるマルチフィジックス問題で成功することができた。

BSCのチームがエンジニアリング・コードをプリ・エクサスケール時代とその先に持っていくアプローチをさらに洗練させるように、さらなる開発に注目して欲しい。今のところ彼らは、ポスト処理の取り扱い、さらに大きな問題の新しいクラスへのスケーラビリティの監視、アクセラレータ(GPUとXeon Phiを彼らは試験している)の利用を含んだスケーラビリティおハードルを表すいくつかの主要な領域にフォーカスするようだ。チームは近い将来にこれらの領域における進捗をレポートする予定である。