遠隔可視化ソフトウェア:PBVR
 (Particle Based Volume Rendering)

PBVR 1.11 (2019/03/15)

最新版のPBVR1.11がダウンロード可能です。
本プログラムはバージョン1.10をアップデートしたもので、ギガバイト規模のデータ可視化を対象としたフィルタ無しPBVRと、テラバイト規模のデータ可視化を対象としたフィルタ付きPBVRの両方を公開しています。

また本アップデートでは、以下の点を修正しています。

・ フィルタ無しPBVRとフィルタ付きPBVRの伝達関数エディタを最新のものに統一
・ 可視化ライブラリKVSのコンパイル時のワーニングを修正
・ 粒子統合パネルによる粒子データ合成表示におけるメモリリークおよび未定義の挙動を修正

ダウンロード

バイナリ

バイナリ一覧

大規模データ向けソースコード(フィルタ+サーバ+クライアント)

Linux / Mac

PBVR.tar.gz

Windows

pbvr_withFilter.zip

中規模データ向けソースコード(サーバ+クライアント)

Linux / Mac

PBVR(noFilter).tar.gz

Windows

pbvr_noFilter.zip

マニュアル

日本語版

download

英語版

download

サンプルデータ

download

ライセンス

オープンソースとし、GNU Lesser General Public License(LGPL)とします。

過去のバージョン

過去のバージョンはこちらから

プログラム開発の目的及び概要

「京」に代表されるペタスケールスーパーコンピュータの登場によってシミュレーションの規模が飛躍的に増大している。 しかしながら、そのようなペタスケールシミュレーションで生成される計算データは現在のネットワーク速度や研究室で利用可能なPC等のストレージ容量や処理性能に比べてあまり巨大であり、 従来型のデータ転送と商用可視化ソフトウェアに基づく計算データのポスト処理が困難になっている。

この課題を解決するために日本原子力研究開発機構・システム計算科学センターでは京都大学小山田研究室で開発された粒子ベースボリュームレンダリング技術、 および、KVSライブラリをベースとしてクライアント・サーバ型の遠隔可視化ソフトウェアPBVRを開発した。 このソフトウェアは

1. スーパーコンピュータ、計算サーバ上のフィルタプログラムによって大規模な構造/非構造格子データをサブボリュームデータに領域分割
2. スーパーコンピュータ、計算サーバ上のサーバプログラムの超並列処理によってボリュームデータを粒子データに圧縮
3. 圧縮された粒子データをクライアント・サーバ間のソケット通信によって転送
4. PC上のクライアントプログラムによって粒子データに高速レンダリング

という一連の遠隔可視化処理を最小のデータ転送で実現する。これによって、大規模シミュレーションデータを転送することなく対話的な遠隔可視化を可能とする。

本ソフトウェアにより、ペタスケールシミュレーションの高度な可視化解析が手軽に実現し、それによって新たな科学的成果が得られれば、 これは開発者一同、望外の喜びである。本ソフトウェアの開発にあたり、超並列版サーバプログラムの開発においては理化学研究所計算科学機構が開発した KMATH_RANDOMを導入し、クライアントプログラムの開発においては GLUIライブラリを導入した。また、「京」版のソフトウェア開発はHPCI戦略プログラム分野4「次世代ものづくり」の支援の下に行われた。

プログラムの特徴

・AVSFLD/UCD、PLOT3D、STL、VTK Legacyの構造/非構造格子データ形式に対応。

・サーバプログラムは「京」、FX10、Linuxクラスタ等の超並列計算機に対応し、動的負荷分散によって1000並列程度のストロングスケーリングを実現。また、Win/Mac/Linux環境のPCにも対応。

・クライアントプログラムはWin/Mac/Linux環境のPCに対応し、最大60フレーム/秒の描画処理を実現。

・任意のマルチプラットフォームのサーバプログラムとクライアントプログラムをsshトンネル経由のソケット通信で接続。

・クライアント・サーバ型の対話処理、サーバプログラムのバッチ処理+クライアント処理、スタンドアロン処理等、動作環境に合わせた柔軟な運用が可能。

・高度な伝達関数設計機能によりボリュームレンダリングだけでなく、等値面、断面、多変量データ解析にも対応。

≪PBVRの処理イメージ≫
PBVRの処理イメージ
≪PBVRのユーザーインターフェース≫
PBVRのユーザーインターフェース
≪原子力機構BX900の48コアを利用したPBVRとEnsightによる遠隔可視化処理性能比較≫
(乱流データ~3億格子, サーバ:XeonX5570, クライアント:XeonE5+QuadroK5000, ネットワーク帯域幅~3.4MB/s)

PBVR

Ensight

フィルタ処理 [sec/step]

0.7

-

画像生成処理 [sec/step]

51.4

3873

データ転送 [sec/step]

75.7

合計 [sec/step]

127.8

3873

描画速度 [frame/sec]

60.0

2.7

クライアントメモリ使用量 [MB]

257

900

参考文献

[1] Kawamura, T., Idomura, Y., Miyamura, H., Takemiya, H., Sakamoto, N., and Koyamada, K., “Remote Visualization System based on Particle Based Volume Rendering”, Proceedings of Conference on Visualization and Data Analysis 2015 (2015)
[2] 河村拓馬, 井戸村泰宏, 宮村浩子, 武宮博,“粒子ベースボリュームレンダリングを利用した遠隔可視化システム”, 日本シミュレーション学会論文誌 6(2), 15 (2014).

開発者

日本原子力研究開発機構 システム計算科学センター 高度計算機技術開発室

連絡先

ccse-quad(at)ml.jaea.go.jp
※ (at) は @ に置き換えて下さい。