IS-PBVR
プログラム開発の目的及び概要
スーパーコンピュータの性能向上に伴ってシミュレーションの規模も増大を続けており、テラスケールからペタスケール、そしてエクサスケールへと成長している。 可視化は結果データから科学的知見を得るのに不可欠な技術として広く利用されているが、大規模な結果データを手元のPCに転送して可視化を行う手法は、 転送時間の増大やPCのメモリ不足を引き起こし、適用が困難になった。
ペタスケール程度のシミュレーションに対しては、ストレージに出力されたデータに対して、豊富な計算資源を持つサーバ上で可視化処理を行い、 生成した可視化要素をクライアントに転送することで可視化を行うクライアント/サーバ型可視化が重要視されている。しかしながら、 エクサスケールのシミュレーションではストレージへのデータ出力自体が大きなボトルネックとなることが懸念されている。
計算実行時に同環境を用いて可視化画像を生成するIn-Situ可視化は、エクサスケールのシミュレーションに対しても確実な可視化が見込める手法である。 しかし従来のIn-Situ可視化には以下に示す問題があり、十分な解析ができていなかった。
1.In-Situ可視化では、バッチ処理投入前に視点位置、色、不透明度等の可視化パラメータを設定するため、可視化の失敗がしばしば発生する。
2.ステンシル計算で用いる領域分割が、可視化処理のためのデータ領域構成やデータ探索に伴う大域的通信を生じさせるため、可視化処理のコストがシミュレーション処理のコストを圧迫する。
3.マルチフィジックスシミュレーション向けの多変量向け可視化技術の開発が不十分。
粒子ベースボリュームレンダリング(PBVR)に基づく可対話的なIn-Situ可視化フレームワーク(In-Situ PBVR)は、上記の問題を解決し、 将来のエクサスケールシミュレーションから得られる大規模な計算結果を可視化・解析するために開発されている。
1.In-Situ PBVRは、In-Situ環境下で結果データを十分小さな可視化用粒子データに圧縮し、その粒子データをクライアントとなるPCに転送することで、 遠隔地からの対話的な可視化が可能である。また、デーモンプログラムを介してクライアント/サーバ間でデータをやり取りすることで対話的な可視化パラメータの変更が可能である。
2.シミュレーションと同時に実行される可視化処理は、シミュレーションの領域分割形状を変更することなく並列化され、コストの高いノード間通信を必要としないため、高いスケーラビリティを達成できる。
3.In-Situ PBVRには、様々なシミュレーションに汎用的に対応可能な多変量可視化機能が実装されている。この機能は、 ユーザ入力の代数式を用いたボリュームデータの合成および色・不透明度関数の合成を可能にする。代数式の文字列を数式処理で計算することで、シミュレーション実行時の多変量可視化が可能になっている。
プログラムの特徴
・シミュレーションコードに結合される粒子サンプラ、対話処理をストレージ上のファイルを介して制御するデーモン、 ユーザPC上で可視化結果の描画や可視化パラメータの編集をするPBVRクライアントの3つのコンポーネントで構成されるフレームワーク
・MPI/OpenMPによるハイブリッドプログラミングモデルに加えて、最新のメニーコアアーキテクチャのSIMD演算に対応
・シミュレーションコードに粒子サンプラが提供する関数を挿入することで、シミュレーションのバッチ処理と同時に可視化処理を実行
・デーモンとPBVRクライアントをsshポートフォワード接続することで、バッチ処理実行時のシミュレーションを対話的に解析・可視化
・シミュレーションの格子として、構造格子、非構造格子(六面体)、階層型格子(Block Structured AMR)をサポート
・高度な伝達関数設計機能によりボリュームレンダリングだけでなく、等値面、断面、多変量データ解析にも対応
≪In-Situ PBVRフレームワークの概要≫
≪ボリュームデータの合成・伝達関数の合成による多変量データ解析≫
≪Xeon Phi7250を搭載したスーパーコンピュータOakforest-Packsにおける計算性能≫
約一億格子の熱流動解析コードに結合し、強スケーリング試験を実施した。
≪従来可視化アプリとの全体性能の比較≫
ネットワーク帯域幅は ~11 [MB/sec]。In-Situ PBVRにより30倍高速に可視化された。
In-Situ PBVR |
ParaView |
|
---|---|---|
可視化データサイズ [MB] |
581 |
5144 |
粒子生成 [sec/step] |
38 |
- |
データ転送 [sec/step] |
52 |
456 |
可視化画像生成 [sec/step] |
7.7 |
900 |
≪熱流動解析の可視化結果(左:In-Situ PBVR、右:ParaView)≫
In-Situ PBVRにより従来可視化アプリと同等の結果が得られた。
参考文献
[1] T. Kawamura, T. Noda, Y. Idomura, “Performance Evaluation of Runtime Data Exploration Framework based on In-Situ Particle Based Volume Rendering”, Journal of Supercomputing Frontiers and Innovations, Vol 4, No. 3, pp. 43-54, 2017.
[2] T. Kawamura, Y. Idomura, H. Miyamura, H. Takemiya, “Algebraic Design of Multi-dimensional Transfer Function Using Transfer Function Synthesizer,” Journal of Visualization, Vol.20, No. 1, pp.151-162, DOI 10.1007/s12650-016-0387-1, 2016.
[3] T. Kawamura, T. Noda, Y. Idomura, “In-Situ Visual Exploration of Multivariate Volume Data based on Particle Based Volume Rendering,” Proceedings of ISAV2016 in SC16, ACM Digital Library and IEEE Xplore, pp.18-22, DOI 10.1109/ISAV.2016.9, 2016.