jimboss 0 Report post Posted July 27, 2012 Hi, I have a product that when built using 7.6 gets massive memory blowouts, whereas if I build it in 7.2 or run it as a jar file there are no memory leaks. For example idling the software at the main lobby uses around 130M of memory in 7.2, where as in 7.6 it uses around 480M. Whilst navigating around my software I can see the memory usage going up, but then it gets cleaned up and comes back down again in 7.2 but in 7.6 it goes up and never comes back down despite performing the same tasks. I have tried different settings for the GC ratio with no change, and setting the maximum heap size to larger or adaptive just lets it run a little longer before the out of memory error. Is there a way to do something similar to a heap dump or memory profiling to see where the problem is in the code in order to determine if the problem is with my product, or at the very least create a test case that can reproduce the problem for you? I am using Runtime.getRuntime().totalMemory(); to monitor the memory size Thanks, James Share this post Link to post Share on other sites
AlexM 0 Report post Posted July 27, 2012 Hi James, In this situation you can set the "jet.gc.stat" and "jet.gc.verbose.out.of.memory" properties and run your application: set JETVMPROP=-Djet.gc.stat -Djet.gc.verbose.out.of.memory App.exe "jet.gc.verbose.out.of.memory" property enables printing of the reason of OutOfMemoryError. "jet.gc.stat" enables gathering of GC statistics. When it is enabled, JET runtime creates "jet.gcstat.log" file in the current directory. Its format is not user-friendly, so it is a good idea to send GC statistics logs to Excelsior Support. So, please collect GC statistics logs from 7.6 and 7.2, and send them to Excelsior Support. Also, include JET project files (.prj and .jpn) you have used to compile the application with JET 7.2 and JET 7.6. Regards, -AlexM Share this post Link to post Share on other sites