Application-controlled demand paging for out-of-core visualization

In the area of scientific visualization, input data sets are often very large. In visualization of computational fluid dynamics (CFD) in particular, input data sets today can surpass 100 Gbytes, and are expected to scale with the ability of supercomputers to generate them. Some visualization tools already partition large data sets into segments, and load appropriate segments as they are needed. However, this does not remove the problem for two reasons: 1) there are data sets for which even the individual segments are too large for the largest graphics workstations, 2) many practitioners do not have access to workstations with the memory capacity required to load even a segment, especially since the state-of-the-art visualization tools tend to be developed by researchers with much more powerful machines. When the size of the data that must be accessed is larger than the size of memory, some form of virtual memory is simply required. This may be by segmentation, paging, or by paged segments. The authors demonstrate that complete reliance on operating system virtual memory for out-of-core visualization leads to egregious performance. They then describe a paged segment system that they have implemented, and explore the principles of memory management that can be employed by the application for out-of-core visualization. They show that application control over some of these can significantly improve performance. They show that sparse traversal can be exploited by loading only those data actually required.

[1]  Eric J. Golin,et al.  Fine-grain visualization algorithms in dataflow environments , 1993, Proceedings Visualization '93.

[2]  Richard Draves,et al.  The case for run-time replaceable kernel modules , 1993, Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III.

[3]  Kai Hwang,et al.  Computer architecture and parallel processing , 1984, McGraw-Hill Series in computer organization and architecture.

[4]  David A. Lane UFAT-a particle tracer for time-dependent flow fields , 1994, Proceedings Visualization '94.

[5]  Anna R. Karlin,et al.  Implementation and performance of integrated application-controlled file caching, prefetching, and disk scheduling , 1996, TOCS.

[6]  Dennis C. Jespersen,et al.  Numerical Simulation of Flow Past a Tapered Cylinder , 1991 .

[7]  Dylan McNamee,et al.  Extending the Mach External Pager Interface to Accomodate User-Level Page Replacement Policies , 1990, USENIX MACH Symposium.

[8]  Scott M. Murman,et al.  Computation of F/A-18 tail buffet , 1996 .

[9]  R. Kevin McCabe,et al.  FAST: a multi-processed environment for visualization of computational fluid dynamics , 1990, Proceedings of the First IEEE Conference on Visualization: Visualization `90.

[10]  Kai Li,et al.  Implementation and performance of application-controlled file caching , 1994, OSDI '94.

[11]  Kai Li,et al.  Application-Controlled File Caching Policies , 1994, USENIX Summer.

[12]  Michael Wayne Young Exporting a user interface to memory management from a communication-oriented operating system , 1989 .

[13]  Andrew W. Appel,et al.  Virtual memory primitives for user programs , 1991, ASPLOS IV.

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

[15]  Steve Bryson,et al.  The virtual wind tunnel , 1992, IEEE Computer Graphics and Applications.

[16]  Sandeep K. Gupta,et al.  AVM: application-level virtual memory , 1995, Proceedings 5th Workshop on Hot Topics in Operating Systems (HotOS-V).

[17]  J. Anderson,et al.  Computational fluid dynamics : the basics with applications , 1995 .

[18]  Abraham Silberschatz,et al.  Operating System Concepts , 1983 .

[19]  Carlo H. Séquin,et al.  Database and display algorithms for interactive visualization of architectural models , 1993 .

[20]  Meng Chang Chen,et al.  HiPEC: high performance external virtual memory caching , 1994, OSDI '94.

[21]  Thomas Anderson,et al.  The case for application-specific operating systems , 1992, [1992] Proceedings Third Workshop on Workstation Operating Systems.

[22]  David R. Cheriton,et al.  Application-controlled physical memory using external page-cache management , 1992, ASPLOS V.

[23]  Ulrich Neumann Parallel volume-rendering algorithm performance on mesh-connected multicomputers , 1993 .

[24]  Gregor Kiczales,et al.  The need for customizable operating systems , 1993, Proceedings of IEEE 4th Workshop on Workstation Operating Systems. WWOS-III.