ニュース
次世代スパコン「富岳NEXT」は可能な限りオープンソースを採用
2025年3月17日 15:34
理化学研究所(理研)は、次世代スーパーコンピュータ「富岳NEXT」(開発コードネーム)に関する開発、整備状況について説明した。2025年2月4日に行なった説明会に続くもので、今回は、システムソフトウェアの概要や、富岳NEXTによる「AI for Science」への取り組みなどについて触れた。
富岳NEXTは、アプリケーションファーストを理念としており、既存のHPCアプリケーションでは、現行の「富岳」の5~10倍以上の実効計算性能を実現するとともに、AI処理ではゼッタ(Zetta)スケールのピーク性能を念頭に設計。50EFLOPS(エクサフロップス)以上の実行性能を実現するシステムの開発および整備を目指している。
可能な限りオープンソースを採用
富岳NEXTのシステムソフトウェアは、HPCI 計画推進委員会による「次世代計算基盤に関する報告書最終取りまとめ」での提言に基づき、さまざまなシステムと高い互換性を持ち、運用開始後も継続的に改善でき、その要素技術がクラウドを含む国内外の情報基盤で採用され、開発の成果を広く社会実装することを目指すものになる。
2025年4月に理研に新設する次世代計算基盤開発部門 先進的計算基盤技術開発ユニットのユニットリーダーに就任する予定の理化学研究所 計算科学研究センター 高性能ビッグデータ研究チーム チームリーダーの佐藤賢斗氏は、「システムソフトウェアは、継続的な機能拡張やメンテナンスのために、可能な限りオープンソースを採用し、開発したソフトウェアも原則としてオープンソースとして公開することで、改変や拡張を通じて富岳NEXTやコミュニティの発展に貢献。プログラムのソースコードが広く無償で公開されることが基本的な考えになる。また、商用ソフトウェアを導入する場合も、定期的に、継続的にアップデートされるものを採用することになる」とした。
具体的には、スーパーコンピュータ「富岳」のシステムソフトウェアの技術と経験をベースに、それを拡張する形で先進性と利用の継続性を両立させた進化型のシステムソフトウェアを構築するほか、「富岳」から「富岳NEXT」に移行してもユーザーが違和感なく、システムおよびアプリケーションを開発、利用ができるようにする。
また、システムソフトウェアは、国内に閉じた開発ではなく、適宜、国内外のコミュニティと連携して、ソフトウェアエコシステムの構築と利活用を進めるのに加えて、科学シミュレーションのみならず、「AI for Science」や「量子-HPC連携」、それらの融合を可能にする最先端のソフトウェア環境を実現するという。
さらに、HPC環境のパッケージ化技術を活用して、標準的なソフトウェアの利用環境を提供。富岳の環境をクラウドで提供する「バーチャル富岳」の実績を発展させて、クラウド上に、富岳NEXTと同等のソフトウェア環境を展開することになる。
ソフトウェア群の詳細
富岳NEXTのシステムソフトウェア群としては、「プログラミング環境」、「数値計算ライブラリ」、「AIフレームワーク」、「通信ライブラリ」、「ファイルシステム」、「スケジューラ」、「OS・コンテナ」、「運用管理システム」で構成する。
富岳NEXTの「プログラミング環境」では、CPUと加速器(GPU)の異種混在環境における高性能計算を実現するための包括的なプログラミング環境を提供。通信ライブラリ(MPI)とリンクが可能なFortranやC、C++ の言語処理系を備えるとともに、加速器に対応するために、CUDAやHIP、OpenMP、OpenACC、SYCL、Kokkosなどの加速部オフローディング処理を考慮したGPUプログラミング環境も整備する。さらに、プログラミング支援環境の充実に向けて、デバッガやプロファイラトレーサーを整備し、CPUや加速部、通信ライブラリを含めた性能解析ツールも整備する。
「国内では多くのアプリケーションがFortranで書かれている。富岳におけるコンパイラ利用状況を見ても多く利用されていることが分かる。富岳NEXTでもFortranのサポートは重要である。また、CやC++もほぼ等しく利用されており、これらの支援環境のサポートも重要である」と述べた。
「AIフレームワーク」では、最先端のAI研究とAI for Scienceを支えるために、最新のAIフレームワークに最適な動作環境を構築することが重要であるとしており、主要なAIフレームワークについては、CPUおよび加速器に最適化した形で運用できるように、必要な技術開発を進めるという。
「オープンソースのさまざまなソフトウェアを個々にサポートすることに加えて、それらをつなぎあわせることも重要である。データをどう取得するかという『データ取得パイプライン』、どう効率的な学習を行なうかという『モデル学習パイプライン』、AIを実問題に適用するための『モデル推論パイプライン』があるが、これを自動化したり、シミュレーションとの連動によって知見を得たりといったことを進めることになる。また、ロボット技術との融合により、AIの意思決定に基づいて、自動化したり、実験結果を自動的に解析し、次の実験ステップを自動的に決めたりといったこともできるようになる。富岳NEXTでは、自動化による科学研究の飛躍的な加速を目指す」とした。
「数値計算ライブラリ」では、CPUおよび加速部に最適化され、性能を最大限活用できるように、計算処理の効率化や高速化を実現するライブラリを開発。「通信ライブラリ」では、通信効率を最大化するために、標準的な通信ライブラリであるMPIやUCXの導入を進めるとともに、CPUや加速器とインターコネクトに最適化したソフトウェアを開発する。「ファイルシステム」では、膨大な量のデータ処理するための能力を備え、階層化されたストレージファイルシステムを構築し、高速で、長時間運用においても安定したデータアクセス環境を提供することを目指すという。
また、「スケジューラ」では、計算資源を最大限に活用するため、ジョブ管理システムである「Slurm」の最新版に相当する機能の整備を進め、計算資源の効率的な割り当てを実現し、システム全体の処理能力の向上を目指す。「OS・コンテナ」では、計算ノードおよびフロントエンドノードのOSとして、最新のLinuxディストリビューションを採用。ソフトウェアが広くサポートされる環境を構築するとともに、ハイパーバイザーやコンテナを活用するために、ソフトウェアおよびハードウェアの両面からの検討を行ない、最適な仮想環境を検討するという。
「運用管理システム」では、ソフトウェアパッケージ管理ツールの「Spack」や、HPCのクラウド化サービスの「Open OnDemand」など、富岳で稼働していた運用管理システムを富岳NEXTでも活用。移行しても違和感なく利用できるようにするほか、AskDonaによる生成AIを活用した問い合わせ対応システムの構築、プログラムを自動的に生成したり、チューニングを支援したりするAIの活用も検討しているという。また、これらのソフトウェア群は、ほかのHPCIのセンターへの導入に対して協力するとともに、クラウドを含む国内外の掲載基盤にも展開していく。
AI for Scienceの推進
一方で、富岳NEXTにおける「AI for Science」を推進するための取り組みについても説明した。
AI for Scienceとは、AI技術を科学研究に応用し、基礎科学の革新を推進する分野を指す。従来の科学的手法とAIを組み合わせることで、HPCにおいては、シミュレーションの高速化や、データ解析の高度化、新しい物質や理論の発見など、さまざまな領域でのブレークスルーが期待されている。
「ChatGPTのように、多数のユーザーが同じ基盤モデルを活用する商業用AIとは一部異なり、各科学分野の専門的な学習データに基づいてカスタム化して利用される科学基盤モデルを活用することになる」という。
HPCIの「計算科学ロードマップ2023」においては、AI for Science ロードマップが示されており、「ナノサイエンス・デバイス」、「エネルギー・資源」、「素粒子・原子核」、「生命科学」、「創薬・医療」、「設計・製造」、「社会科学」、「脳科学・人工知能」、「地震・津波」、「気象・気候」、「宇宙・天文」の11分野を横串する形で、AI for Scienceが記述されている。
理研では2024年4月から稼働させた「理研TRIP-AGIS」により、AI for Scienceの実用化を開始。大規模言語モデルなどの汎用的な基盤モデルを活用しながら、科学研究データを系統的に学習させ、各分野における科学基盤モデルを開発。これを実験自動化技術やシミュレーション技術と組み合わせることで、科学研究の自動化を推進している。また、開発した科学基盤モデルと利用技術を、産学に広く開放することで、多様な分野における科学研究の革新を目指している。
さらに、量子ーHPC連携プラットフォームの構築では、計算可能領域の拡張を目指すTRIP構想の一環として、計算科学研究センターを中心に、量子コンピュータと富岳などのHPCを連携させる汎用的なソフトウェアの開発に取り組んでおり、2023年度に外部資金を得て研究開発を加速することになる。
「得られた研究成果をもとに、ソフトウェア資産を取り込み、富岳NEXTの開発、整備に生かしていくことになる。富岳NEXTの試験運用の段階から、AI for Scienceの成果を創出するには、富岳の教訓を取り入れるとともに、アプリケーションコミュニティとのコデザインによるシステム設計が推進することが必要になる。富岳NEXTにおいて、どんなアプリケーションが動くのか、どんなアルゴリズムが動くのかを体系化し、それを対象にしたベンチマークの開発や、蓄積した知見をシステム開発に取り入れるといったことを進める。移植や性能評価の自動化、AIによるプログラム生成や自動チューニング、AIチャットボットのさらなる高度化にも取り組む」と語った。
富岳で運用中のアプリ開発支援をテストベッドにおいて継承するとともに、富岳NEXTに向けた継続的な高度化を図る考えも示した。