我试图使用Eclipse MAT解析11GB堆转储,我收到以下错误
An internal error occurred during: "Parsing heap dump"
我认为MAT无法解析如此庞大的堆转储。我阅读了一些帖子并将VM配置增加到转储大小的80%以上。以下是我的虚拟机配置
-vmargs -Xms8192m -Xmx10240m
我仍然无法加载转储。我尝试使用ParseHeapDump.bat而没有任何变化......
请帮助......
答案 0 :(得分:2)
继续增加Xmx
直到JVM抱怨,然后增加交换文件大小,然后再次增加Xmx
等。
在那个阶段需要很长时间,因为它将使用磁盘作为RAM。
答案 1 :(得分:1)
我最近在Mac OS Catalina(10.15.3)上安装了Eclipse MAT(Eclipse内存分析器版本1.9.1)。我需要查看一个4g堆转储。 MAT的默认JVM堆大小为1024m。
我认为增加JVM堆大小的最简单方法是使用shell窗口-转到/Applications/mat.app/Contents/Eclipse/文件夹。然后vi MemoryAnalyzer.ini并将-Xmx1024m更改为您所需的值,在我的情况下,我使用-Xmx10g。
要查看更改,请重新启动MAT并转到帮助->关于Eclipse Memory Analyzer,然后单击安装详细信息,然后查找条目:eclipse.vmargs = -Xmx10g,大约向下50行。
答案 2 :(得分:0)
在Windows安装的Eclipse Photon上,我通过更新eclipse.ini文件中的内存参数来解决此问题。该文件夹直接位于我的c:\eclipse
文件夹下。
-Xms6g
-Xmx6g
我尝试将其设置为4 GB,以进行大约4.1GB的内存转储,但失败了。因此,经验法则是将其设置为大于内存转储大小的值。
答案 3 :(得分:0)
这个设置对我有用。
我最近还安装了 Eclipse MAT 来分析 4.85GB
堆转储文件。
Eclipse Memory Analyzer Version: 1.11.0
MacOS Catalina: 10.15.7
Hardware Memory: 16GB
Heap dump file size: 4.85GB
Heap dump file type: PHD
Classes: 33.6k
Objects: 4.8m
Class Loader: 575
我将 MemoryAnalyzer.ini
更改为 14GB
如下:
-vmargs
-Xmx14g
我也确认了如下配置:
Help -> About Eclipse Memory Analyzer 1.11.0
Installation Details
Configuration
标签eclipse.vmargs=-Xmx14g
。加载这个 4.85 堆转储文件需要几分钟时间。
注意:我尝试使用 2g、4g、8g、10g、12g 设置 Xmx
失败 - 均因 Eclipse MAT 工具中的 JVM 内存不足而失败。