都市部 5.7km 四方の 1m 格子を用いたリアルタイム風況シミュレーション
朝比祐一、長谷川雄太、小野寺直幸、井戸村泰宏
日本原子力研究開発機構

システム計算科学センター

１．はじめに都市区画における化学、生物、放射性汚染物質の拡散予測は安全性の観点から社会的な関心が高い。その拡散予測には高い精度かつ高速な都市風況予測が必要となる。本研究では、GPU を複数台利用することで高解像度のリアルタイム都市風況予測が可能な「CityLBM」の開発をおこなっている。本報告では、Wisteria/BDEC-01 データ・学習ノード群(Aquarius)における大規模並列実行によって初めて可能となった高解像度リアルタイム都市風況予測シミュレーションの性能測定について説明する。

２．コード概要
本研究で用いる都市風況シミュレーション CityLBM1の概要について説明する。CityLBM は、非圧縮性流体の弱圧縮性近似解法の一つである格子ボルツマン法(LBM: Lattice BoltzmannMethod)を用いる。LBM は、GPU などの超並列アーキテクチャに適しており、効率的な演算を行うことが出来る。CityLBM は、特に NVIDIA 社の GPU を対象として最適化されてきたが、近年の GPUスパコンの多様化に鑑み、AMD 社の GPU への移植もなされている。異なるベンダーの GPU 上での性能比較については、学会での報告2を参考にされたい。

２.１．物理モデル
CityLBM の支配方程式である格子ボルツマン方程式は、以下で表される。
ここで、𝑖𝑖は速度方向を表し、𝑓𝑓! は速度分布関数、Ω! は衝突項を示す。本研究で用いた D3Q27 モデ
ルでは移流速度で与える。ただし、𝑐𝑐は隣接格子へ移動する速度で、𝑐𝑐 = Δ𝑥𝑥 / Δ𝑡𝑡となる。流体の物理量である密度ρおよび流速ベクトル𝒖𝒖は、速度分布関数のモーメントをとって以下の式で計算する。

CityLBM では、格子ボルツマン方程式と温度場の移流拡散方程式を連立して時間発展を行う。汚染物質についてはパッシブスカラーを仮定し、移流方程式の計算を行う。これらに加えて、CityLBM では計算境界においてメソスケール気象シミュレーションデータとのデータ同化（Dataスーパーコンピューティングニュース- -1 56- -Vol. 25, No.22023

Assimilation）を Nudging 法によって行う。CityLBM では、計算コストやメモリ使用量を削減するために AMR（適合細分化格子）法に基づく細分化を行う。本研究では、細分化レベルの最大値は 2 とし、Lv0 を最低解像度、Lv2 を最高解像度とする。

２.２．並列化
CityLBM では、AMR 法に基づく細分化を行うが、都市風況シミュレーションにおける細分化格子は、高度方向に関してのみ行われており、水平方向に関しては一様である。したがって、領域分割は水平方向に等分する二次元領域分割が適している。分割後の各領域をどのように GPU に割り当てるかが性能向上の上での鍵となる。
Aquarius を始めとする近年の GPU スーパーコンピュータは、ノード内に複数の GPU を搭載するため、GPU 間の通信はノード内通信とノード間通信の階層的構造を有する。Aquarius は１ノードあたり 8GPU (NVIDIA TESLA A100)を搭載しており、ノード内 GPU 間通信には高速な NVlink が利用可能であり、ノード間通信では低速な Infiniband を利用する必要がある。従って、ノード間の通信量が小さくなるような分割が好ましい。
本研究では、通信の最適化として 2 次元領域分割のブロッキングを導入した3。これは、ノード間で通信が必要なグリッド数（表面積）が最小となるように 2 次元領域分割の MPI プロセスを再配置するものである。図１は、8 ノード 64 GPU の 2 次元領域分割に対してプロセスマッピン
グを適用した場合を示す。(a)のブロッキングなしの場合では、ノード内領域のアスペクト比は8:1 であり、ノード間通信量が増大する。(b)のブロッキングありの場合では、ノード内領域のアスペクト比が 4:2 に改善している。格子ボルツマン法のステンシル計算においては、3 次元で 26方向の隣接点を参照する。ノードを跨いだ参照が必要となるプロセス数はブロッキングなしの場
合に 18 プロセス、ブロッキングありの場合に 9 から 15 プロセスとなる。ブロッキングによってノード間通信の負荷が軽減されるため通信時間の短縮が期待できる。

(a)Node #7(b)

Node #6Node #5
Node #4y

Node #3y

Node #2
Node #1
Node #0

Node #6

Node #7

Node #4

Node #5

Node #2

Node #3

Node #0

Node #1xx

図１: 8 ノード 64 GPU を用いた場合の 2 次元領域分割の模式図。各セルは各 GPU の担当領域を示し、色はノード番号と対応している。(a) ブロッキングなし。(b)ブロッキングあり。

スーパーコンピューティングニュース- 2- - 57

Vol. 25, No.2

2023

３．計算性能と計算結果
３.１． Aquarius と Summit におけるスケーリング
CityLBM は、GPU スパコンにおける大規模計算のために最適化されてきた。初期の CityLBM は、等間隔格子を用いており、TSUBAME2.0 において 10080x10240x512 格子に対し 4032 GPU (NVIDIATESLA M2050)を用いて、新宿や皇居を含む東京都心部の 10km 四方のエリアを対象に 1m 格子での計算が実現されている4。その後 AMR 法が導入され、Summit において Oklahoma City の 5km 四方のエリアを最大解像度 1m で計算を行い、4096 GPU (NVIDIA TESLA V100)までの良好なスケーリングを実現した（図２）。計算アルゴリズムや最適化手法の発展については、文献 5 を、物理モデ
ルの発展や検証については、文献 1, 6 を参照されたい。

(a)

(b)

図２: Summit における 4096 GPU までのスケーリング測定結果。(a)強スケーリング。(b)弱スケーリング。

図３: Aquarius における 360 GPU までの強スケーリング測定結果。(a)１ステップあたりの実行時間。ピンクの点線はタイムステップサイズと対応し、これを下回るケースではリアルタイム計算が実現されている。(b)1 ステップの実行時間における MPI 通信の割合。

スーパーコンピューティングニュース- -3 58- -Vol. 25, No.22023

Aquarius においては、Oklahoma City の 5.7 km 四方のエリアを対象に最大解像度 1m で計算を行った。細分化格子の設定は、高度(z)に基づく細分化とし、z < 32 [m], 32 < z < 128 [m], z> 128 [m]のそれぞれの領域に解像度 1 m, 2 m, 4 m の格子を割り当てた。総計算格子点数は 25億点である。 地表面及び市街地の建物の境界条件としては、no-slip 境界条件を仮定し、LBM のBounce-back 境界条件を適用した。水平方向および上空の境界には、任意の気象条件を導入できる Nudging 法を適用し、WRF (Weather Research and Forecasting)モデルによる事前計算で得られた水平解像度 500 m、鉛直解像度 50m、時間間隔 1 分のメソスケール気象シミュレーションデータと同化させた。
図３は、40 GPU から 360 GPU までの強スケーリングの結果を示す。5.6 倍の高速化という良好なスケーリングが実現されている。また、ブロッキングを行った場合（青線）では、ブロッキングを行わない場合（赤線）と比べ実行時間が短縮されていることが確認できる。縦軸は 1 タイムステップあたりの実行時間であり、これがタイムステップサイズ（ピンクの点線）よりも低くなっているものがリアルタイム計算となる。ブロッキングありの場合で、240 GPU、360 GPU でリアルタイム計算が実現されている。図３(b)は、1 ステップの実行時間における MPI 通信の割合を示す。360 GPU においては、ブロッキングありの場合でも MPI 通信の割合は 51 %となっているが、ブロッキングなしの場合 (57%)と比べて改善が見られる。
TSUBAME2.0 においては、4032 GPU(NVIDIA TESLA M2050)を用いて 1m 解像度の計算を実行するのにリアルタイムの約 30 倍の処理時間がかかっていたが、Aquarius においては 240 GPU(NVIDIATESLA A100)においてリアルタイムの計算を実現している。これはハードウェア自体の進化に加えて、AMR の導入や通信最適化などアルゴリズムの改良によって初めて可能となったものである。

３.２． 高解像計算の結果
本研究で行った 1m 解像度の計算と 4m 解像度の計算結果の違いについて示す。

(b)

(a)

(c)

(d)

図４: 地表面高さ 5m 地点における鳥瞰図。(a)4m 解像度の風況場、(b)1m 解像度の風況場。
(c)4m 解像度の汚染物質濃度、(d)1m 解像度の汚染物質濃度。
図４は 1m 解像度と 4m 解像度における、風況場および汚染物質拡散の鳥瞰図である。図から明らかなように、特にビル密集地帯における風の流れが大きく異なっていることがわかる。同様にスーパーコンピューティングニュース- 4- - 59

Vol. 25, No.22023

(a)
汚染物質の分布も異なる。文献 1 では 2m 解像度のアンサンブル計算を実行し、そのアンサンブル平均を行うことで予測精度を向上しているが、1m 解像度の計算によってさらなる予測精度の向上が期待される。しかしながら、現在の計算機では 1m 解像度のアンサンブル計算はリアルタイムで実行することは出来ない。1m 解像度のアンサンブル計算をリアルタイムで行うためには、
Frontier のような世界最大規模の計算機が必要と考えられることから、現在、Frontier に採用されている AMD GPU での最適化も同時並行して進められている。また、データ同化の精度を高めるためのパーティクルフィルタ法やアンサンブルカルマンフィルタ法の導入 7 も進められており、今後さらなる予測精度の向上が期待される。

４．まとめ
本研究では、都市風況予測シミュレーションコード CityLBM の Wisteria/BDEC-01 データ・学習ノード群(Aquarius)における大規模並列性能測定を行った。強スケーリング性能測定においては、40 GPU から 360 GPU (Aquarius 全系)までの強スケーリングで、5.6 倍の高速化という良好なスケーリングを実現した。Aquarius を始めとする 1 ノードに多数の GPU を搭載するノード構成に対応するため、2 次元のプロセスマッピングを行い、ノードを跨ぐ通信量を最小化した。この実装により、360 GPU 並列計算では 1.15 倍の高速化が達成された。これまでのリアルタイム計算は、P100 や V100 GPU において、4km 四方の 4m 解像度または 2m 解像度が限界であったが、今回の大規模計算により、Oklahoma City の 5.7km 四方のエリアに対し、1m 解像度の都市風況シミュレーションをリアルタイムで実現出来た。今後は、Frontier をはじめとする異なる GPU スパコンへの移植や、より大規模かつ高精細なシミュレーションの実現およびデータ同化手法の高度化等による予測性能向上などが期待される。
謝辞
本計算は、Wisteria/BDEC-01（Aquarius）の大規模 HPC チャレンジを利用させて頂いたもので、東京大学基盤情報センターの方々に深く感謝の意を表する。また、学際大規模情報基盤共同利用・共同研究拠点（課題番号 jh210003, jh210049）の支援を受けた。記して謝意を表す。

参考文

献[1] N. Onodera, Y. Idomura, Y. Hasegawa et al., “Real-time tracer dispersion simulationin Oklahoma City using locally mesh-refined lattice Boltzmann method”, Boundary-LayerMeteorology, 179, 2021, pp. 187-208, doi: 10.1007/s10546-020-00594-x.
[2] 朝比 祐一、小野寺 直幸、長谷川 雄太、下川辺 隆史、芝隼人、井戸村 泰宏、"適合細分化
格子ボルツマン法に基づく都市風況解析コードの Nvidia および AMD の GPU における性能移植性評価"、第 27 回計算工学講演会（2022/6/1-3、秋田&オンライン）[3] 長谷川 雄太、小野寺 直幸、朝比 祐一、井戸村 泰宏、"格子ボルツマン法に基づく都市風
況解析の Tesla A100 GPU における性能測定"、第 35 回数値流体力学シンポジウム (12/14-16、オンライン)[4] 小野寺直幸, 青木尊之, 下川辺隆史, 小林宏充. ”格子ボルツマン法による 1m 格子を用いた都市部 10km 四方の大規模 LES 気流シミュレーション”. ハイパフォーマンスコンピュー
ティングと計算科学シンポジウム論文集, 第 2013 巻, pp. 123–131, 2013.

スーパーコンピューティングニュース- -5 60- -Vol. 25, No.2

2023

[5] Onodera N, Idomura Y, Ali Y, Shimokawabe T (2018) Communication reduced multitime-step algorithm for real-time wind simulation on GPU-based supercomputers. In:
2018 IEEE/ACM 9th workshop on latest advances in scalable algorithms for large-scale
systems (ScalA), pp 9–16. https://doi.org/10.1109/ScalA.2018.00005[6] Onodera N, Idomura Y (2018) Acceleration of plume dispersion simulation using
locally meshrefined lattice Boltzmann method. In: International conference on nuclear
engineering, volume 8: computational fluid dynamics (CFD); nuclear education andpublic acceptance. https://doi.org/10.1115/ICONE26-82145[7] 小野寺 直幸、井戸村 泰宏、長谷川 雄太、下川辺 隆史、青木 尊之、"適合細分化格子ボルツマン法による大気境界層生成のためのパラメータ最適化"、第 27 回計算工学講演会（6/1-3、オンライン）

スーパーコンピューティングニュース- 6- - 61

Vol. 25, No.22023