資料ダウンロード
汎用ポストプロセッサーEnSightによる大規模データの可視化
CAEのあるものづくり Vol.10|公開日:2009年3月
目次
- はじめに
- メモリー使用量の低減
- グラフィックス表示の高速化
- 高速な可視化処理アルゴリズム
- クライアント/サーバー機能
- バッチ処理
- 並列処理
- おわりに
はじめに
最近、数値解析が大規模になった結果、解析結果を可視化する際に、レスポンスが悪い、インタラクティブな操作ができない、処理に非常に時間がかかる、あるいは、可視化すること自体がほとんど不可能ということをよく耳にするようになりました。
コンピューターの性能の向上とともに数値解析が大規模化しており、大規模な解析結果の可視化が問題になりつつあります。解析プログラムは大規模データに対応している一方で、ポストプロセッサーがまだ大規模データに対応できていないケースが少なくありません。
汎用ポストプロセッサーEnSightは、Ansys製品をはじめ、様々なソルバーとのインターフェースがありますが、大規模データの可視化に強いのも特徴の一つです。
EnSightはCray Research社が自社のスーパーコンピューター用の可視化ソフトとして開発したのがはじまりです。その後、1994年にCEI社として独立し、様々なプラットフォームで稼働するようになりました。したがって、当初から、64ビット対応や大規模データ対応を意識して開発されています。
米国エネルギー省が中心となったASCIプロジェクトでは、大規模データ用の可視化ソフトウェアとして採用され、2002年には4.8億要素、2003年には11億要素のデータの可視化に成功しています。
ここでは、EnSightが大規模データの可視化にどのように対応し、EnSightを使うことによって、どのようなメリットがあるかについて紹介します。
(提供:米国Los Alamos国立研究所)
メモリー使用量の低減
メインメモリーの容量を超えてメモリーを使用すると、スワッピングを起こし、急激に処理速度が低下します。
EnSightは64ビット対応していますので、2GB以上のメモリーを利用できますが、以下のようにメモリーの使用量を低減する工夫があります。
読み込むパーツの選択
表示に不要なパーツがある場合、必要なパーツのみ読み込むことが可能です。
不要なデータ成分(変数)は読み込まない
温度、速度、圧力など数多くのデータ成分(変数)がある場合、可視化アプリによっては、最初にすべてのデータ成分を読み込むものがあります。この場合、実際には可視化に使わないデータ成分も読み込んでしまいます。EnSightは、可視化をするときにはじめて必要なデータを読み込みます。たとえば、温度で色表示しようとすると、そのときに温度のデータを読み込みます。
不要になったデータ成分をメモリーから解放可能
たとえば、温度の表示から圧力の表示に変えた場合、温度のデータは不要になるので、明示的に温度のデータをメモリーから解放することができます。(解放しない場合は、次に利用するときにアクセスが高速ですがメモリー使用量は増えます。)
グラフィックス表示の高速化
可視化結果をマウス操作でインタラクティブに回転、拡大・縮小、移動することが望まれますが、表示するポリゴン(多角形:実際は三角形)数が大量になると描画処理(レンダリング)に時間がかかり、インタラクティブな操作が困難になります。大規模データの可視化では、生成されるポリゴン数が膨大になるため、描画処理の速度が重要です。
EnSightでは全般的に描画処理が高速化されており、可視化ソフトによっては、同じデータでもEnSightのほうが高速に表示される場合があります。特に以下の特長があります。
半透明表示の高速化
半透明表示は、描画処理の負荷が高く、表示が遅くなります。
EnSightでは、DepthPeelingと呼ばれる手法を使って、半透明表示を高品質で高速にすることができます。(GLSLに対応したOpen GLグラフィックスカードが必要です。)
ポリゴン数の削減機能
ポリゴン数が多くなればなるほど、表示速度が遅くなります。さらに、グラフィックスメモリのサイズを超えると、極端に表示速度が遅くなります。EnSightには、形や色の分布をできるだけ保持しながらポリゴン数を削減する機能があります。(ほぼ同一平面上にある複数の三角形を1つの大きな三角形に置き換えます。)
操作中はポリゴンを削減した状態で快適にインタラクティブに操作し…