宇宙プラズマシミュレーションコードを用いた ITO システムの計算・電力性能評価

深沢 圭一郎 1、三吉 郁夫 2、加藤 雄人 3、南里 豪志 4、周 嘉程 5、近藤 正章 6、
坂本 龍一 6
1．京都大学学術情報メディアセンター

2．富士通株式会社次世代 TC 開発本部

3．東北大学大学院理学研究科

4．九州大学情報基盤研究開発センター

5．京都大学大学院情報学研究科

6．東京大学大学院情報理工学系研究科

1．研究背景・目的

我々が住む宇宙の 99.99%の以上の体積はプラズマと呼ばれる電離気体で占められている。

このプラズマは密度が非常に小さいため無衝突状態にあり、無衝突プラズマ（宇宙プラズマ）を理解することで、我々が住む宇宙の本質的な理解に繋がる。2017 年 9 月に太陽で起こった大規模フレアが世界的にニュースになり、地上の生活にも影響あることが予測されたよ
うに、太陽の様々な活動によって宇宙の環境変動、地上への電磁的影響が引き起こされる。
例えば、衛星の障害、宇宙飛行士の被爆に繋がる宇宙環境の変動が引き起こされる。このような宇宙の変動は宇宙天気と呼ばれており、その予報予測が世界中で実際に行われている。
近年の国際宇宙ステーションでの活動や衛星打ち上げなど日本においても宇宙利用が現実的になってきたことを考えると、宇宙天気を調べる宇宙プラズマ研究は非常に重要である。
宇宙プラズマを流体近似した磁気流体力学（MHD）コードは磁気圏と呼ばれる巨大な惑星磁場の勢力範囲をシミュレーションすることができ、流体近似と粒子を合わせたハイブリッドコードや、粒子コードは磁気圏内やその周辺領域の局所的な運動論を含む物理過程をシミュレーションすることができる。広範囲の宇宙天気を予報する場合、MHD シミュレーションが用いられるが、プラズマの振る舞いを理解するために重要な波動粒子作用など
MHD シミュレーションで扱えない現象は、ハイブリッドコードや粒子コードを用いて研究開発が進んでいる。本研究では ITO システムを利用し、この宇宙プラズマの振る舞いを解く、粒子コード、ハイブリッドコード、MHD コードを連成させた新しいシミュレーションコードの計算・電力性能評価を行うことを目的としている。
本研究プロジェクトの研究成果はこれら宇宙天気予報の高度化へ直接的に寄与する。また、近年ではこれらの計算結果と観測結果を学習することで、人工衛星・宇宙探査機の運用計画を最適化する研究が始まっており、数値シミュレーションはこれまで以上の役割を求められている。本研究プロジェクトの研究成果により、大規模システムでのプロダクトランの効率化が期待でき、結果として宇宙科学ミッションの成功に大きく貢献する。

2．研究実施内容

本年度は HPC 分野で利用されるベンチマークを利用して、ITO の一般的な性能測定と電力制限による性能変化を調査した。また、宇宙プラズマコードを連成させたシミュレーションが ITO 全ノードを利用し動作するか、またその場合の性能はどうなるかを調査した。

2.1．HPC ベンチマークによる ITO の電力特性調査
ここでは HPC Challenge ベンチマークの Star DGEMM/STREAM と Poisson 方程式のソルバである ICCG を利用し、電力測定を行った。電力測定には RAPL を利用している。図１に DGEMM/STREAM の ITO 各ノードにおける実行結果を示す。Xeon といった汎用的CPU では CPU 製造時における個体差が大きく出るが、DGEMM は平均性能に対して－8%～5%の大きなばらつきが見えた。また DRAM の性能をみる STREAM では、Triad で平均に対して－3%～7%の性能差が現れた。このようなばらつきは消費電力にも大きく影響することが考えられる。また、性能にばらつきはあるが、特に DRAM で顕著なように、製品上カタログスペックは満たす必要があるため、性能の下振れはあまり見られないことも確認できる。

図1

ITO 全ノードにおける DGEMM/STREAM の実行性能

さらに、SIMD 幅や電力制約による性能変化を調べた。AVX512、AVX2、AVX の利用の有無と消費電力に制限をかけない場合、165W、140W の制限をかけた場合の DGEMM の性能を図 2 に示す。また、各 AVX の有無による STREAM Triad の性能についても図 2 に示す。DGEMM は電力制約を課したほうがわずかではあるが電力あたり性能が良くなることがわかった。STREAM Triad は SIMD 幅によらず同程度の性能だが、SIMD 幅の広いほうが電力あたり性能の良いことが示された。

図2

ITO における DGEMM/STREAM の SIMD 幅や電力制約による性能変化

次に ICCG ソルバの ITO 利用時の消費電力を計測した。図 3 に結果を示す。CPU 消費電力では、最も平均消費電力が低いもので 121.8W、最も高かい CPU は 139.6W となり、CPU 間で平均に対し－10.3%～2.7%の消費電力のばらつきが現れた。DRAM の消費電力は低いものが 62.9W、高いものが 86.4W となり、平均に対し－17.7%～13.1%のばらつきが見え、CPU 以上にばらつきが大きくなっている。また、図から分かるが、消費電力の分布が 70W 程度の DRAM と 80W 程度の DRAM の 2 つに分離している。DRAM 自体に何らかの違いがある可能性を示している。消費エネルギーは、解が収束するまでに要した時間×平均消費電力（CPU＋DRAM）だが、最小は 460.0J、最大は 713.6J と平均に対し－19.7%～24.6%となった。このぶれ幅は大きいが、図から分かるように、大半のノードの実行時間は平均の実行時間に対して－3%～3%のぶれ幅で変化が少ないが、2 台のノードのみ平均に対し 36%実行時間が長くなっている。これはハードウェアに何らかの問題があったと考えられる。

図３

ITO における ICCG の消費電力特性

2.2．連成計算の性能測定
我々は、現在 CoToCoA（Code-To-Code Adapter）と呼ばれるコード間結合ライブラリを開発しており、エクサスケール級計算機でもスケールする性能を目指している。ここでは、そのライブラリを利用した MHD コードの連成シミュレーションを約 1000 ノード並列で
実 行 し た 場 合 の 性 能 評 価 を 行 っ た 。 CoToCoA の 詳 し く 情 報 は GitHub（https://github.com/tnanri/cotocoa）で公開されているので、そこを参照していただきたい。
連成計算としては、図 4 のようなモデルを想定し、このなかでマクロ計算（MHD シミュレーション）の結果から磁力線を計算し、ミクロ計算に繋げる部分を評価した（連成計算にかかる通信部分の時間評価）。並列数によって利用する総グリッドサイズが変化しない
strong scaling では、400x400x400 の 3 次元グリッドを利用し、並列プロセス数当たりの計算量が一定の weak scaling では 100x100x100/プロセスのグリッドを使い評価している。図5 に性能測定結果を載せる。図中の sampling は計算時間であり、その他は CoToCoA の関数の実行時間となる。各関数の詳細は省くが、基本的には各関数は 0.1 秒以下（req poll のみ 1 秒以下）の実行時間であり、プロダクトランでは sampling 時間が 100 倍以上になることを考えると、元の計算に 1%の影響を与えない程度であり、利用することによる計算性能低下は防げている（前述のように計算ノード間の性能差の方が大きい）。また、register はプロセス数が増えるほど登録する数が増えるため時間がかかっていく関数だが、1000 並列程度では 0.1 秒以下であり、現在は問題になっていない。エクサスケールではどこまで時間がかかるか分からないが、そこまで大きな値にならないと想定される。また、weak scaling ではその他の CoToCoA 関数はスケーリングしており、並列性も悪くないと現状では評価ができる。

図４ 宇宙プラズマにおける連成計算のモデル

図 5 MHD 連成計算の性能評価

3．まとめと今後の計画

本研究では、HPC でよく利用されるベンチマークによる ITO システムの電力性能評価、また、連成計算の大並列環境における実行性能を評価した。まず、DGEMM と STREAM
Triad では、平均実行性能に対しノードのよっては±5%程度のぶれが見えた。また、
DGEMM では電力制約を課した際に電力あたり性能が良くなり、STREAM Triad は SIMD
幅によらず同程度の性能だが、SIMD 幅の広いほうが電力あたりの性能が良い傾向が確認できた。ICCG ソルバでは、CPU に比べて DRAM のノードでの電力消費量のばらつきが大きく見えた。また、消費電力が低い傾向にある DRAM と高い傾向にある DRAM の 2 種が混在していることが分かった。
CoToCoA を利用した MHD コードの連成シミュレーションの評価では、1000 ノード利用において、strong/weak scaling において、CoToCoA 関数の実行時間はメインの計算部分に比べて非常に小さくおさえられることが分かった。また、利用ノード数が増えることによる性能劣化もほとんど見えず、並列スケーラビリティも良いことが確認できた。CoToCoAは宇宙プラズマシミュレーションに限定されたものではなく、汎用的なライブラリとなっている。エクサスケール時代では、結合シミュレーションが進むと考えられるが、CoToCoAを使うことで、容易に、結合シミュレーションが可能だというサンプルに本プロジェクト結果がなると考えられる。
今後は、ITO の計算ノードの電力特性を測定しつつ、連成計算での電力消費、また電力消費が抑えられる最適化方法を調査、研究していく。

成果発表
1.

K. Fukazawa, Y. Katoh, T. Nanri, Y. Miyake, Development of Coupling Framework for
Macro and Micro Scale Simulations of the Magnetosphere, AOGS 16th Annual Meeting,Singapore, 2019.

2.

Y. Katoh, K. Fukazawa, T. Nanri, Y. Miyake, Cross-reference Simulations by Scalable
Communication Library for the Study of Wave-particle Interactions in Planetary
Magnetospheres, AOGS 16th Annual Meeting, Singapore, 2019.

3.

深沢圭一郎、加藤雄人、三宅洋平、南里豪志、Development of cross-reference framework
for macro- and micro-scale simulations of the magnetosphere、地球電磁気・地球惑星圏
学会 第 146 回総会及び講演会、熊本、2019．

4.

K. Fukazawa, Y. Katoh, T. Nanri and Y. Miyake, "Application of Cross-Reference
Framework CoToCoA to Macro- and Micro-Scale Simulations of PlanetaryMagnetospheres," 2019 Seventh International Symposium on Computing andNetworking Workshops (CANDARW), Nagasaki, Japan, 2019, pp. 121-124, DOI:
10.1109/CANDARW.2019.00029.

5.

Y. Katoh, K. Fukazawa, T. Nanri, Y. Miyake, Cross-Reference Simulation by Code-ToCode Adapter (CoToCoA) Library for the Study of Planetary Magnetospheres, HPC
Asia2020, 2020.