I’m trying to analyse a ~800mb heap dump, which requires a bigger heap than the standard for my eclipse. however, when I go to the eclipse.ini file and set a -Xmx2g (or -Xmx2048m) I get an error “Failed to create the Java Virtual Machine”.
1) yes, I have enough memory. 2) I can change it up to exactly -Xmx976m. 3) I’ve tried the standalone MAT analyser and it works with -Xmx1024m, not a byte more. 4) No, 1gb is not enough to analyse that heap, I get a OOM
This is the eclipse error:

This is the MAT error:

(I reckon they are the same, this is just so you can see an example with MAT)
My current eclipse.ini (working) is:
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx384m
Anybody figures this out?
thanks!
f.
I’ve created a fake app to test jvm params, and what I found is that the JVM don’t seems to swap in windows, at least not form the startup.
I have 4gb of ram, but it only allows me to allocate the remaining free space. Odd how it works different for different appps: my fake app allowed my to go up to Xmx1380m while eclipse only went up to Xmx1024m.
The error goes like:
Same thing but -Xmx1380g and the app went fine.
Never had this problem in unix, the heap will start with whatever the size you say even if it goes straight for swap.
For anyone with this problem on windows:
first check ctrl + shift + esc -> performance -> Physycal Memory; and set you Xmx just about the same value as shown in ‘Available’.
It would be cool if someone could tell how prevent the JVM from checking if you really have enough free memory before starting. The 1.5g I’m using worked as I’m processing a heap dump of only 800mb, but if it was a little bit bigger I’d have no where to run…
cheers,
f.