How to pass d64 Parameter to the MAT-JVM [message #516939] |
Thu, 25 February 2010 09:47  |
Eclipse User |
|
|
|
Hello,
I am currently trying to load a 15GB heap dump into the memory analyzer. This indeed takes a lot of memory to do so. I am using the standalone (RCP) version of MAT.
But when passing the Xmx15g parameter via vmargs, I only get
> Invalid maximum heap size: -Xmx4g
> The specified size exceeds the maximum representable size.
It seems the JVM of the MAT is running in 32bit mode. To get it to 64bit I normally would pass a "-d64" as a parameter, but all tries to do so with the MAT failed, the JVM seems to stay 32bit. Java itself is 64bit capable of course, the same jdk dropped this 15GB dump, and "java -d64 -version" responds a 64bit-Server as expected.
So how can I force the MAT to run on 64bit as well?
Thanks!
Rolf
|
|
|
|
Re: How to pass d64 Parameter to the MAT-JVM [message #517147 is a reply to message #516939] |
Fri, 26 February 2010 06:58  |
Eclipse User |
|
|
|
At least I got it running in the command-line mode as described in the FAQ, including the "-d64" parameter directly passed to the JVM. Unfortunately the Heapdump seems to be corrupted, after some errors on the console it creates some HTML reports, but it seems those cover only a few megabytes of the dump.
Passing the -d64 parameter to the MemoryAnalyzer binary or via the ini file does not work - all Xmx sizes >= 4g fail anyway.
Anyway, I also tried modifying the command line to launch the GUI-mode, but I did not get it working. I think it has to look something like this:
/path/to/jdk/bin/java -d64 -Xmx15g -XX:-UseGCOverheadLimit -D osgi.bundles=org.eclipse.equinox.common@2:sta
rt,org.eclipse.update.configurator@3:start,org.eclipse.core.runtime@start -jar plugins/org.eclipse.equinox.launcher_1.0.200.v20090520
.jar -consoleLog -application osgi.bundles=org.eclipse.equinox.common@2:start,org.eclipse.update.configurator@3:start,org.eclipse.cor
e.runtime@start
But all tries finished with similar messages like this one:
Warning: No xauth data; using fake authentication data for X11 forwarding.
!SESSION 2010-02-26 07:56:26.020 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.6.0_12
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=solaris, ARCH=sparcv9, WS=gtk, NL=en
Framework arguments: -application org.eclipse.mat.ui.rcp.application
Command-line arguments: -consoleLog -application org.eclipse.mat.ui.rcp.application
!ENTRY org.eclipse.osgi 4 0 2010-02-26 07:56:30.372
!MESSAGE An error occurred while automatically activating bundle org.eclipse.ui.workbench (108).
!STACK 0
org.osgi.framework.BundleException: The activator org.eclipse.ui.internal.WorkbenchPlugin for bundle org.eclipse.ui.workbench is invalid
at org.eclipse.osgi.framework.internal.core.AbstractBundle.load BundleActivator(AbstractBundle.java:157)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.s tart(BundleContextImpl.java:750)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWor ker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.star t(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAct ion.java:408)
[...]
Since the heapdump seems to be corrupted anyway, I will let it rest by now, but for future usage it would still be useful to get it running in 64bit mode.
Best regards,
Rolf
|
|
|
Powered by
FUDForum. Page generated in 0.03658 seconds