Isosurface extraction in large scientific visualization applications using the I/O-filter technique

For large scientiic visualization applications, it is often impossible to hold the entire datasets in main memory, even on supercomputers. Previously, we proposed the I/O-lter technique, which is the rst I/O-optimal method for the problem of isosurface extraction in scientiic visualization. I/O-lter works by indexing and reorganizing the datasets in disk, so that isosurface can be extracted with a very small amount of disk I/O's. The main advantage of this approach is that datasets much larger than main memory can be visualized very eeciently, possibly even on low-end machines. The original I/O-lter technique uses the I/O-optimal interval tree of Arge and Vitter as the indexing data structure, together with the isosurface engine from Vtk (one of the currently best visualization packages). The main shortcoming of this approach was the overheads of the disk scratch space and the preprocessing time necessary to build the data structure, and of the disk space needed to hold the data structure. In this paper, we improve the rst version of I/O-lter by reducing its data structure size, the disk scratch space and the preprocessing time, while keeping the isosurface query time the same. We achieve the improvements through a new implementation of I/O-lter, by replacing the interval tree with the metablock tree of Kanellakis et al., which is also I/O-optimal for query and space. In the process, we propose two simple preprocessing algorithms for static metablock tree that are I/O-optimal. We give the rst implementation of metablock tree, and compare the practical performance between metablock tree and interval tree under the same framework of I/O-lter with real-world test data. Our experiments provide detailed quantitative evaluation of the implementations of the two trees, and lead to new insights to their properties. As mentioned, the metablock-tree implementation results in performance improvements of the I/O-lter method. Moreover, for our test datasets larger than main memory, the isosurface queries in both implementations of I/O-lter are about two orders of magnitude faster than those in Vtk's original implementation, showing that I/O-lter is an excellent isosurface technique for large scientiic visualization applications. With this technique, we achieve fast isosurface generation for large datasets at a disk memory cost (in dollars) that is 10-20% of the cost associated with having enough main memory to hold the entire dataset.

[1]  Jeffrey Scott Vitter,et al.  Paradigms for optimal sorting with multiple disks , 1993, [1993] Proceedings of the Twenty-sixth Hawaii International Conference on System Sciences.

[2]  Alok Aggarwal,et al.  The input/output complexity of sorting and related problems , 1988, CACM.

[3]  Lars Arge,et al.  The Buuer Tree: a New Technique for Optimal I/o-algorithms ? , 1995 .

[4]  Jyh-Jong Tsay,et al.  External-memory computational geometry , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[5]  Charles D. Hansen,et al.  Isosurfacing in span space with utmost efficiency (ISSUE) , 1996, Proceedings of Seventh Annual IEEE Visualization '96.

[6]  Sridhar Ramaswamy,et al.  Theory and practice of I/O-efficient algorithms for multidimensional batched searching problems , 1998, SODA '98.

[7]  D. E. Vengro,et al.  Eecient 3-d Range Searching in External Memory , 1995 .

[8]  John Wilkes,et al.  An introduction to disk drive modeling , 1994, Computer.

[9]  Valerio Pascucci,et al.  Contour trees and small seed sets for isosurface traversal , 1997, SCG '97.

[10]  William E. Lorensen,et al.  Decimation of triangle meshes , 1992, SIGGRAPH.

[11]  Koji Koyamada,et al.  Automatic Isosurface Propagation Using an Extrema Graph and Sorted Boundary Cell Lists , 1995, IEEE Trans. Vis. Comput. Graph..

[12]  Yi-Jen Chiang,et al.  Experiments on the Practical I/O Efficiency of Geometric Algorithms: Distribution Sweep vs. Plane Sweep , 1995, WADS.

[13]  Joseph S. B. Mitchell,et al.  Fast rendering of irregular grids , 1996, Proceedings of 1996 Symposium on Volume Visualization.

[14]  Yi-Jen Chiang,et al.  I/O optimal isosurface extraction , 1997, Proceedings. Visualization '97 (Cat. No. 97CB36155).

[15]  Arie E. Kaufman Volume visualization , 1996, CSUR.

[16]  Edward F. Grove,et al.  External-memory graph algorithms , 1995, SODA '95.

[17]  Valerio Pascucci,et al.  Fast isocontouring for improved interactivity , 1996, VVS '96.

[18]  T. M. Murali,et al.  I/O-efficient algorithms for contour-line extraction and planar graph blocking , 1998, SODA '98.

[19]  William E. Lorensen,et al.  Marching cubes: A high resolution 3D surface construction algorithm , 1987, SIGGRAPH.

[20]  Ramesh Subramonian,et al.  LogP: towards a realistic model of parallel computation , 1993, PPOPP '93.

[21]  Kwan-Liu Ma,et al.  Out-of-Core Streamline Visualization on Large Unstructured Meshes , 1997, IEEE Trans. Vis. Comput. Graph..

[22]  H. Edelsbrunner A new approach to rectangle intersections part I , 1983 .

[23]  J. Wilhelms,et al.  Octrees for faster isosurface generation , 1992, TOGS.

[24]  Bernd Hamann,et al.  The asymptotic decider: resolving the ambiguity in marching cubes , 1991, Proceeding Visualization '91.

[25]  Michael T. Goodrich,et al.  Topology B-Trees and Their Applications , 1995, WADS.

[26]  William E. Lorensen,et al.  The design and implementation of an object-oriented toolkit for 3D graphics and visualization , 1996, Proceedings of Seventh Annual IEEE Visualization '96.

[27]  V. Rich Personal communication , 1989, Nature.

[28]  Edward M. McCreight,et al.  Priority Search Trees , 1985, SIAM J. Comput..

[29]  M. V. Kreveld Efficient methods for isoline extraction from a digital elevation model based on triangulated irregular networks , 1994 .

[30]  Sridhar Ramaswamy,et al.  The P-range tree: a new data structure for range searching in secondary memory , 1995, SODA '95.

[31]  Sridhar Ramaswamy,et al.  Indexing for Data Models with Constraints and Classes , 1996, J. Comput. Syst. Sci..

[32]  Daniel Cohen-Or,et al.  Volume graphics , 1993, Computer.

[33]  Han-Wei Shen,et al.  A Near Optimal Isosurface Extraction Algorithm Using the Span Space , 1996, IEEE Trans. Vis. Comput. Graph..

[34]  Han-Wei Shen,et al.  Sweeping simplices: a fast iso-surface extraction algorithm for unstructured grids , 1995, Proceedings Visualization '95.

[35]  David Ellsworth,et al.  Application-controlled demand paging for out-of-core visualization , 1997, Proceedings. Visualization '97 (Cat. No. 97CB36155).

[36]  William E. Lorensen,et al.  Implicit modeling of swept surfaces and volumes , 1994, Proceedings Visualization '94.

[37]  Jeffrey Scott Vitter,et al.  I/O-e cient scienti c computation using TPIE , 1996 .

[38]  Sridhar Ramaswamy,et al.  Path Caching: A Technique for Optimal External Searching , 1994, PODS 1994.