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


1月 4, 2024

HPCソフトウェアの問題解決に向けて官民が協力

HPCwire Japan

Agam Shah オリジナル記事「Public and Private Sectors Team up to Solve HPC Software Problem

ハイパフォーマンス・コンピューティングにおけるソフトウェアの実装は、組織がそれぞれの壁に囲まれた環境の中でツールを選択するため、より断片的になってきている。

しかし、Linux Foundationの下で設立された新組織が、この混沌に秩序をもたらす可能性がある。

Supercomputing 2023において、この非営利団体はHigh-Performance Software Foundation(HPSF)を設立する意向を発表した。この団体は、大規模なコンピューティング・リソース向けの開発ツールの開発と共有を奨励する。

官民の参加も、コラボレーションを通じてソフトウェアの技術革新を後押しするはずだ。

エネルギー省のエクサスケール・コンピューティング・プロジェクトに参加している米国国立研究所もこのプロジェクトに参加し、貢献する予定であると、エネルギー省のプロジェクト・ディレクターであるロリ・ディアチン氏は述べている。

民間のメンバーには、インテル、キットウェア、エヌビディアなど、HPC市場の大手企業が名を連ねている。

ローレンス・リバモア国立研究所と国立スーパーコンピューティング・アプリケーション・センターの研究者は、今年発表された研究論文の中で、HPCは1940年代に始まり、セキュリティ上の懸念からコンピューティング・リソースへのアクセスが制限されたため、時間の経過とともに断片化してきたと述べている。

国家安全保障に関連するアプリケーションに取り組む政府機関は、アクセスを制限し、機密情報を保護するためにシステムを開発したと研究者たちは述べている。

しかし、GithubやGitlabのようなソーシャル開発者サイトによって、コーダーがリソースを共有するようになると、状況は変わり始めた。

また、HPCはアクセラレーテッド・コンピューティングへとシフトしており、開発プロセスにより多くのソフトウェアレイヤーが加わっている。開発者はリポジトリからコードをダウンロードするが、そのプログラムが安全に使用できるようにガードレールが用意されている。

国立研究所には、開発サイクルに追加する前にコードの提案をテストする継続的インテグレーションモデルがある。また、研究所は通常、共有したくない独自のアプリケーションを所有している。

 
   

研究所は、すでに多くのHPC用オープンソースツールを提供している。しかし、HPCシステムに様々なアクセラレータが追加され、開発環境は複雑化している。

例えば、ヨーロッパで計画されているエクサスケールのスーパーコンピュータ「Jupiter」には、エヌビディアのGPUアクセラレータとともに量子システムが搭載される可能性がある。プロセッサー間で実行するコードをシームレスに分解するツールはあるが、個別のライブラリやコンパイラーで新たなレイヤーを追加することになる。

エヌビディアのGPUは、そのGPUの計算能力をフルに活用するバイナリを作成するために、独自の無償CUDAツールとコンパイラを必要とする。

典型的なHPCソフトウェア開発サイクルは、アプリケーションから始まり、ライブラリに移り、インフラレイヤー(Dockerなど)に分解さ れる。その後、コンパイラ/ツールチェーン(LLVM、GCC、またはOneAPI)、OS(Linux)へと進み、最終的にハードウェアシステムとアクセラレータ(GPUまたはFPGAを含む)に到達する。

ローレンスリバモア国立研究所(LLNL)のARESマルチフィジックスコードベースには、31の内部専用パッケージがあり、そのうち13はLLNLで開発されたオープンソースパッケージである。これらは72の外部オープンソースソフトウェアパッケージに依存している。
ハードウェア、コンパイラ、その他のツールのレイヤーが加わることで、複雑なソフトウェア依存関係のマトリックスが形成され、監査が困難になる。これは、主にコードの完全性を維持し、悪意のあるコードからシステム・アクセスを保護するために、国立研究所が閉じておきたい多くの脆弱性を追加する可能性がある。

「技術的、セキュリティ的、政治的な問題のすべてが、外部で開発されたオープンソースソフトウェアを社内のアプリケーションやマシンと統合することを極めて困難にしています。多くのHPCソフトウェア・プロジェクトがオープンで開発されているにもかかわらず、それらはクローズドなHPCリソース上で実行されなければならず、最新のオープンソース・アプリケーションの大部分がHPCシステム上で確実に実行されることを保証するのはますます難しくなっています」とLLNLとNCSAの研究者は述べている。

HPSFは、この問題を解決し、HPCコンピューティング環境全体で確実に使用できる、共通で安定したオープンソース・コンピューティング環境を構築しようとしている。

HPSFは2024年5月に正式に発足する。このプロジェクトに含まれるオープン・ソフトウェア・パッケージには、一般的なパッケージ・マネージャであるSpack、Kokkos、AMReX、WarpX、TrilinosApptainer、VTK-m、HPCToolkit、そしてExtreme Scale Software StackであるE4Sが含まれる。

HPSFは、オープン・ソフトウェア・スタックを標準化し、ソフトウェア・パッケージのデプロイを容易にすることを目的としている。