Between simulation (HPC) and 3D visualization there is visualization mapping, explained Stephan Olbrich. Examples of mapping methods are volume visualization for scalar data with direct volume rendering, coloured slicer, and isosurface; and flow visualization for vector data with arrows, line integral convolution, and stream and path lines.
The real-time requirements are interactive, explorative scenarios using immersion, with less than 100 ms response time, and smooth animation with frame rate synchronization at more than 10 frame updates per second.
As a solution for the large data problem the data extraction and visualization framework "DSVR" has been developed. DSVR stands for Distributed Simulation and Virtual Reality. DSVR provides integration of simulation and visualization and parallel in-situ data extraction.
The result is a minimization of sequential bottlenecks because the visualization mapping is parallelized and
DSVR offers an asynchronous transfer of data extracts for streaming.
Stephan Olbrich emphasized the reduction of data volume for the storage of 3D polygons and lines instead of raw data. You can have an on-demand 3D presentation and interaction. There is a limitation of bandwidth and rendering update time but the volume of data extracts has to be controlled.
The reduction is flexible and efficient with parallel, vertex cluster based simplified isosurfaces, parallel extraction of property-enhanced path lines, and interactive post-filtering.
On the DSVR workfloor, one can distinguish the data source (parallel simulation), the filter (isosurface) for the mapper, the rendering stage (graphics), and the presentation (display). You can optimize the DSVR simulation and visualization pipeline by applying 3D geometries and by cutting the pipeline in the middle.
This trade-off solution consists of three parts: the 3D generator, the storage system and the 3D viewer for rendering and presentation.
Stephan Olbrich elaborated on the implementation of the DSVR software framework.
Parallel data extraction consists of a subroutine library, tightly coupled to simulation. Distributed memory architectures are supported via MPI. One can create 3D scenes by visualization mapping using isosurfaces. The streaming server stores the 3D scenes for record and play. The 3D viewer is a multi-platform WWW browser plug-in with portable C and TCP/IP.
The scalable volume visualization implementation provides parallel extraction of multi-resolution isosurfaces. It is a combination of marching cubes and vertex clustering algorithms. The marching cubes (Lorensen and Cline, 1987) provide isosurface extraction of scalar data on a regular 3D grid. The result is a huge amount of 3D polygon data or triangles. The Vertex Clustering (Rossignac and Borrel, 1993) is a polygon simplification method. It was originally designed for post-processing of high-resolution 3D meshes.
Dr. Olbrich explained that the idea behind it is a tight integration, avoiding temporary generation and storage of large amounts of triangle data. The clustering criterion is given by the regular grid.
Rectilinear grid and domain composition is used for the handling of boundaries. It is a method with boundary exchange and the clustering is done with additional edges at cluster boundaries.
Stephan Olbrich gave an application example with the atmospheric simulation using the PALM-DSVR batch job for the visualization of convection cells and the isosurface of temperature. A small part is shown with the clustering method.
Scalable flow visualization is carried out with "Parallel Pathline and Property Extraction". The parallel simulation and data extraction is MPI-based. The result is scalar data of individual domains and vector data of individual domains.
Further development of the 3D streaming approach consists in "Interactive, Property-based Pathline Post-Filtering". The subset of pathlines offers a reduced data volume and a primitive count. At the client-side there is post-filtering and also at the server-side post-filtering is performed.
Dr. Olbrich concluded by giving an application example with atmospheric convection using the PALM simulation.