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


5月 27, 2022

NASAのHPC活動に注目

HPCwire Japan

Oliver Peckham

先日スタンフォード大学で開催された HPC Advisory Council の会合で,NASA のエイムズ研究センターで Advanced Supercomputing (NAS) 部門の部門長を務める Piyush Mehrotra 氏は,「HPC Matters!」という大きなタイトルで講演を行ないました.この会議でメロトラ氏は、NASAにおけるスーパーコンピューティングの現状と、そのシステムがどのように応用されているかを明らかにした。

「スタンフォードの皆さんからすぐ近くにあるNASAエイムズ・スーパーコンピューティング施設は、NASAのプレミア・スーパーコンピュータ・センターです」とメロトラ氏は述べた。「メリーランド州のNASAゴダードにも、地球科学に重点を置いた、やや規模の小さい施設があります。」

「私たちの使命は、NASAの全てのミッションをサポートすることです。NASA が科学面でサポートする 4 つのミッション指令のすべてにまたがる約 600 のプロジェクト(科学と工学のプロジェクト)と、約 1,500 ~ 1,600 人のユーザを常時抱えています。」

NASAのHPCオペレーション

同センターには、3つの主要なシステムがあると同氏は説明する。2008年に立ち上げられたPleiadesは5.95 Linpackペタフロップス(Top500で81位)、2016年に立ち上げられたElectraは5.44 Linpackペタフロップス、2019年に立ち上がったAitkenは最近の拡張に伴い13.1総ピークペタフロップスを提供するとのことだ。

「皆さんの中には、このPleiadesを最近まで私たちのメインシステムとして使っていた方もいらっしゃるかもしれません。Aitkenは…実は先週から最大のシステムとして引き継いでいます。」このシステムは現在6.39 Linpackペタフロップスであると述べた。拡張前のAitkenは、5.80 LinpackペタフロップスでTop500リストの84位に位置していた。

新しいシステムであるElectraとAitkenは、モジュール式のスーパーコンピューティング施設に収容されており、これにより新しいシステムを導入する際の時間と資本支出を節約することができるとメロトラ氏は述べている。

 

「また、カリフォルニアの素晴らしい気候を利用して、より環境に配慮することができます。ElctraとAitkenでは、Pleiadesの冷却に巨大な冷却装置や空調ユニットを使う代わりに、90パーセントの時間、外気を使ってシステムを冷却しています。昨日のように気温が85度以上になると、ファイバーカーテンを使って水を流し、その水が空気を冷やしてシステムを冷却するんです。」

(Aitkenも同じような設備を持っていますが、少し違っていて、実際のチップを冷却するための閉じた水のループを使っています」と述べている。)

メロトラ氏は、Electraはこのモジュール方式の試験的なもので、NASAは現在、モジュール用に1エーカーのパッドを用意しており、そのうちの1つはすでに完全に満杯で、2つ目も準備中であると説明している。

この施設のスーパーコンピュータは、50〜60ペタバイトのプライマリストレージと約1エクサバイトのテープストレージで補完されている。また、NASAのシミュレーションを表示するために使用されている「Hyperwall」と呼ばれる128画面の巨大な可視化システムも補完的な役割を担っている。

「もちろん、ある程度のGPUもありますし、その他の小さなシステムもあります。GPUは、私の環境ではあまり重要ではありません。AIやMLへの利用は増えてきており、それが増えればGPUも増やしていくつもりです。」

NASAの戦略を支える科学の星座

「NASAの戦略計画は4つのテーマで構成されており、すべての人の利益のために宇宙の秘密を探求するというビジョンを持っています」 とメロトラ氏は、それぞれの概要を説明した。「”発見”、”探査”、”明日の技術の開発”、”NASAのミッション達成のための能力、人材、施設の実現”です。」

「ハイパフォーマンス・コンピューティングは、実はこの “実現技術 “の部分に位置づけられるのですが、他の部分にも影響を与えています」と述べている。NASAにおけるHPCの影響を説明するために、メロトラ氏はNASAのスーパーコンピュータで実行されている一連のプロジェクトに注目した。


 

「このプロジェクトでは、打ち上げ環境のシミュレーションを行い、新しい打ち上げ環境の設計に役立てています。「従来から使われている打ち上げ環境では、新しいロケットには不十分で、より大きな、より高い温度を発生させます。このシミュレーションは、設計者を支援するために行われる数値流体力学シミュレーションなのです。」


 

「もう一つのプロジェクトは、宇宙発射システムそのものです」と彼は続けた。「固体ロケットブースターが分離したときに何が起こるかをシミュレートしています。ロケットブースターをコアステージから分離するために起動される小さなロケットエンジンがあるわけですが、ご覧の通り、それが進むにつれて乱流が発生し、分離されるブースターに影響を与えるのです。」危険なのは、ブースターが実際に後ろに転がり、コアステージと衝突して、空中災害を引き起こすことだと彼は説明しました。だから、研究者は、分離後のブースターの空中の動きを分析したいのだ。

「このシミュレーションには、約5,000個のコアが2週間ずつ使用されます」と、メロトラ氏は説明した。


 

NASAのジェット推進研究所(JPL)とマサチューセッツ工科大学(MIT)などと共同で、海の状態をグローバルにシミュレートしている別のチームもある。

「彼らが行っているのは、まず観測データを入力として、地球の表面に2億5千万個のグリッドを作り、そこで水の圧力、速度、塩分濃度を計算することです」とメロトラ氏は説明し、シミュレーションは海面下90グリッドレベル(合計約5キロメートル)にも及んでいると語った。その目的は、海が時間とともにどのように変化していくかを把握することだ。「これは、私たちのシステムで行われた最大のアプリケーションの1つで、約9,000コア、約5.5ペタバイトのデータを生成しました」と、彼は付け加えた。


メロトラ氏は、NASAの宇宙発射システム(SLS)ロケットを感圧塗料で塗装した風洞で使用した事例を挙げ、ラピッドレスポンスコンピューティングについても言及した。「従来の方法では、風洞で実験を行い、データをダンプして、エンジニアに戻し、エンジニアと一緒に数ヶ月かかるというものでした。ワークステーションでは24時間かかる解析も、HPCシステムでは5分程度で解析が完了します。そして、このデータは実験者がすぐに利用できるようになったのです。」

シミュレーション活動とは対照的に、NASAにおけるAIと機械学習はまだかなり初期段階にある。「NASAはある意味、(AIやMLの)ゲームに遅れています」とメロトラ氏は言う。「しかし、この18ヶ月の間に、機械学習と深層学習を使ったプロジェクトが爆発的に増えています。」これらのプロジェクトは、特徴検出プロジェクト(画像中の太陽系外惑星や樹木の識別など)、予測プロジェクト(宇宙天気予報など)、異常検出(航空安全やシステム動作など)などに及んでいると、彼は述べている。

障害となるもの

しかし、NASA の HPC 分野は、すべてが順調というわけでは ない。メロトラ氏は、NASAのコードの多くはやや古く、ハードウェアの最適化(および新しいハードウェアのためのコードの近代化)も同様に最適化されていないと説明している。

「C++やPythonなどが増えているにもかかわらず、非常に多くのコードがまだFortranを使用しています」と彼は言う。「この問題の根底には,少なくともNASAでは,この問題を解決するための予算が不足しているという事実があります。予算の多くは科学サイドに回され、彼らがある程度のパフォーマンスを得ている限り、コアのパフォーマンスやコードのポータビリティを改善するための予算は残されていません。」

また、NASAはHPCの専門家を見つけるのが難しく、多くの専門家が代わりにAIやデータ中心の分野に進むことを選択していると述べている。「専門知識がないのです」とメロトラ氏は嘆いている。「HPCに向かってくる人はあまり多くありません。」彼は、ハッカソンなどを通じて開発者を巻き込むことで、この対策に取り組んでいると述べた。