ESS Project: FY98 Annual Report 

System Software R&D


A Parallel Volume Rendering System for Scientific Visualization

Objective

Develop a portable and scalable parallel volume rendering system for the teraFLOPS supercomputers to support distributed visualization needs demanded by HPCC Grand Challenge applications and the general science community. The rendering system is capable of visualizing large volumes of 4-D simulation/modeling data, which are beyond what the existing workstation and network bandwidth can handle.

Approach

A parallel volume rendering Application Programming Interface (API) based on the splatting algorithm was designed and implemented. The API renders 3-D scalar and vector fields in structured grids, in both time and space. An X-window based GUI with multiple control panels was also designed and implemented for interactive control of visualization parameters and trackball control of viewing positions. A network interface was built in between the GUI and the renderer API that supports image compression over low-speed network and high-resolution displays. All together, the distributed volume rendering system is called the ParVox (Parallel Voxel Renderer).

Accomplishments

1. Generated and released three ParVox animations and one RIVA animation for the North Atlantic Ocean simulation. The movies present 5-year simulation results of a 1/6 degree North Atlantic Ocean Eddy-Resolving simulation model developed by Yi Chao of the Jet Propulsion Laboratory (JPL). The four animations are (1) the global ocean surface temperature movie, (2) the ocean velocity movie with ocean floor topographic map, (3) the deep ocean movie, and (4) the salinity movie. These four MPEG movies are reduced resolution version of the original 1280×1024 animations. The global ocean surface movie was included in the NASA videotape "Images of Earth and Space: SC97 Edition." Information on the North Atlantic Ocean simulation can be found at the NASA HPCC Ocean Climate Modeling Project.

2. Successfully demonstrated real-time remote visualization using ParVox at NASA's research exhibit at SC97. 150 time-steps of thermal convective velocity datasets were rendered using a 128-PE CRAY T3E at Goddard, the rendered images were compressed, transmitted via NREN to the San Jose Convention Center, and displayed on an SGI workstation at the NASA booth. ParVox delivered two frames/second end-to-end rendering rate in this demonstration.

3. GUI ImagePrepared and released ParVox 1.0 to general public. A Unix tar/gzip file of ParVox 1.0 is available upon request, it will be delivered to the National HPCC Software Repository as soon as the Repository-In-A-Box (RIB) is ready. The ParVox documentation, including installation guide, tutorial, and manpages for ParVox APIs and GUI program, is available via the ParVox home page. ParVox 1.0 includes (1) a parallel rendering library, (2) a parallel input/output library supporting files in NetCDF format or in raw binary format, (3) a parallel wavelet compression library, (4) a network interface program that works together with the ParVox GUI, (5) an interactive GUI that runs on SGI, Sun, HP, PC/Linux. Figure 1 shows a sample session from the interactive GUI.



ParVox 1.0 is capable of:

  1. running on the CRAY T3D/T3E using SHMEM library and on the HP Exemplar using MPI-2 one-sided communication API,
  2. rendering regular structured grid volume data interactively and in batch mode as volume, slices, and iso-surfaces,
  3. rendering multiple time-steps data for animations,
  4. colormap and opacity map editing in GUI,
  5. wavelet image compression for operating over slow network links, and
  6. writing to multiple output devices: PPM files, lossy compressed images, raw images, and HiPPI framebuffers.

4. Ported ParVox to the HP/Convex SPP2000 using the one-sided communication API defined in MPI 2.0 standard. ParVox on the SPP2000 runs about 4 times faster than the Cray T3D and 1.4 times faster than the CRAY T3E for up to 32 nodes. The overall scalability for SPP2000 is poorer than the CRAY T3D/E for more than 32 nodes.

BEAM Image5. Collaborated with Sandeep Gulati and the BEAM (Beacon-based Exception Analysis for Multimissions) group at JPL to visualize multiple time-step Cassini engineering analysis data using ParVox. With ParVox, they were able to visualize the system physics causal connectivity against time, using both simulation model data and actual Cassini AACS (Attitude and Articulation Control Subsystem) data.

The sample image shown in Figure 2 was computed with Cassini AACS data from launch until May 31, 1998. Relatively minor mode transitions, mostly associated with automatic functioning of the AACS, appear in green hues. The red lines indicate mode changes of a serious or unexpected nature, i.e. , those requiring careful analysis. These include launch of the spacecraft (seen as the red plate at far left), Trajectory Correction Maneuvers (TCM's), and previously unmodeled behavior. This representation gives the BEAM group a graphical, machine-interpretable method of mode identification. It can be used to quickly identify critical data, and to detect very slow trends and shifts in the system physics, such as degradation.

6. Published three technical papers:

P. Li, S. Whitman, R. Mendoza, J. Tsiao, "ParVox - A Parallel Splatting Volume Rendering System for Distributed Visualization," Proceedings of 1997 Symposium on Parallel Rendering, Oct. 1997, pp. 7-14. The ParVox images appeared on the front cover.

Y. Chao, P. Li, P. Wang, D. Katz, B. Cheng, S. Whitman, "Ocean Modeling and Visualization on Massively Parallel Computers," in Industrial Strength Parallel Computing edited by Alice Koniges, Academic Press, 1998.

P. Wang and P. Li, "Parallel Computation and Visualization of Three-dimensional, Time-dependent, Thermal Convective Flows," Proceedings of the International Workshop on Applied Parallel Computing, Large Scale Scientific and Industrial Problems, 1998, Sweden.

Significance

The demand for parallel supercomputing in interactive scientific visualization is increasing as the ability of the machines to produce large output datasets has dramatically increased. The ParVox system provides a solution for distributive visualization of large time-varying datasets on a scientist's desktop even when using low-speed network and low-end workstations.

Status/Plans

We completed two major milestones for FY98, namely, the release of ParVox 1.0 and the MPI port to the HP/Convex SPP2000. We are currently working on the functional pipelining of ParVox. It will be separated into three modules, an input module that reads data from the files or from the network, a rendering module that performs the rendering and classification functions, and a compression/output module that does image compression and outputs the image to various output devices. The functional pipelining design is illustrated in Figure 3. The input module will support data-input on demand thus allowing out-of-core rendering for very large datasets. Functional pipelining should be ready by the end of September 1998. The major milestone for FY99 is to add rendering functions for unstructured grid 4-D datasets. We will work closely with the AMR team at JPL in order to address their visualization requirements while we are developing new rendering capability.

Point of Contact

P. Peggy Li
NASA Jet Propulsion Laboratory
peggy@spartan.jpl.nasa.gov
818-354-1341
http://alphabits.jpl.nasa.gov/ParVox/