Unidata - To provide the data services, tools, and cyberinfrastructure leadership that advance Earth system science, enhance educational opportunities, and broaden participation. Unidata
         
  advanced  
 

Re: java.lang.OutofMemoryError

Hi Nash'at,

> Thanks Bill,
> 
> I ran it using java -mx256m and I was able to do a lot of re-displays
> before I got that error again. I have a question though- I thought that
> Java does automatic memory management. Once I clear the display, it should
> release all the memory, but it seems that somethings are kept causing
> the application to crash at a later time. Can you give some insight
> on this?
> 
> Any suggestion/help would be appreciated.

I am taking the liberty of CC'ing this to the VisAD mailing
list since this issue may be of general interest.

There are still some memory leaks in Java3D.  One of the
reasons we are working so closely with the Java3D team at
Sun is to make sure that VisAD will be able to use the new
Java3D version 1.2.1 (1.2 and 1.1.3 throw Exceptions that
make them unusable with VisAD).  Version 1.2.1 will include
fixes for many memory leaks and other memory use problems.

Also, Sun's Java3D team recently helped us to find a memory
leak in VisAD (leaks can occur in Java code if you have
Vectors that grow indefinately).  I have just updated the
VisAD ftp server with the fix for this memory leak.  It
occured if you repeatedly called DisplayImpl.removeReference()
and DisplayImpl.addReference().  However, if you just leave a
DataReference linked to your DisplayImpl and change you data
by repeated calls to DataReference.setData(), or by calls to
Field.setSamples(), then your memory leak is probably in
Java3D rather than in VisAD.  You may also want to look for
Vectors that grow indefinately in your own code.

Cheers,
Bill
----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI  53706
hibbard@xxxxxxxxxxxxxxxxx  608-263-4427  fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html


 
 
  Contact Us     Site Map     Search     Terms and Conditions     Privacy Policy     Participation Policy
 
National Science Foundation (NSF) UCAR Community Programs   Unidata is a member of the UCAR Community Programs, is managed by the University Corporation for Atmospheric Research, and is sponsored by the National Science Foundation.
P.O. Box 3000     Boulder, CO 80307-3000 USA     Tel: 303-497-8643     Fax: 303-497-8690