NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
I have been investigating VisAD memory use by: 1. Working on VisAD's code for transforming data into depictions. 2. Using Bill Foote's Java Heap Analysis Tool (available from http://java.sun.com/people/billf/heap/) to analyze memory use. 3. Email exchanges with the Java3D developers at Sun. So far, the results of this effort are: 1. VisAD memory use has been greatly reduced, including unnecessary copies of data, lingering references to no-longer-needed arrays, and using byte[] arrays in place of float[] arrays for colors. I described this work in a previous email and at least one user pointed out that it didn't help. This is because: 2. Most VisAD memory use is inside of Java3D. For example, large GeometryArrays are copied on the way into Java3D, colors in byte[] arrays are converted to float[] arrays internally in Java3D, and memory-efficient IndexedTriangleStripArrays are converted to less-efficient TriangleStripArrays internally in Java3D. 3. Java3D version 1.2 will fix some of these problems. For example, it will be possible to pass GeometryArrays into Java3D without copying. Please be assured that reducing memory use and increasing speed are top priority issues for VisAD. Cheers, Bill ---------------------------------------------------------- Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI 53706 whibbard@xxxxxxxxxxxxx 608-263-4427 fax: 608-263-6738 http://www.ssec.wisc.edu/~billh/vis.html
visad
archives: