How To Open A Hprof File
7 Answers 7
If you want a fairly avant-garde tool to practise some serious poking around, await at the Memory Analyzer project at Eclipse, contributed to them by SAP.
Some of what you can practice is mind-blowingly skilful for finding memory leaks etc -- including running a form of limited SQL (OQL) confronting the in-memory objects, i.e.
SELECT toString(firstName) FROM com.yourcompany.somepackage.User
Totally brilliant.
answered Oct 9, 2008 at 4:41
CowanCowan
36.9k 11 gold badges 66 silverish badges 65 bronze badges
4
You lot can utilize JHAT, The Java Heap Analysis Tool provided past default with the JDK. It's command line just starts a web server/browser yous use to examine the memory. Not the most user friendly, but at least it's already installed most places you'll go. A very useful view is the "heap histogram" link at the very bottom.
ex: jhat -port 7401 -J-Xmx4G dump.hprof
jhat can execute OQL "these days" as well (lesser link "execute OQL")
answered Oct 9, 2008 at four:17
three
-
Later on running in a higher place command In the console you lot will go the message int the last "server is ready" Port : 7401. Later that open this URL : localhost:7401 "yous tin can see details in the browser windows ".
May 30, 2018 at nine:42
-
java.io.IOException: Version string not recognized at byte 17December 24, 2020 at 21:28
-
This is not delivered by default in the latest versions of OpenJDK or Oracle JDK.
Jan xiii at 14:55
You lot tin also use HeapWalker from the Netbeans Profiler or the Visual VM stand-solitary tool. Visual VM is a good alternative to JHAT equally it is stand alone, but is much easier to utilise than JHAT.
Y'all need Java six+ to fully use Visual VM.
moxi
1,411 20 silver badges 21 bronze badges
answered Oct ix, 2008 at 16:41
James SchekJames Schek
17.8k 7 gold badges 50 silverish badges 64 bronze badges
v
-
You should add a note that this is for Java half-dozen and 7 only.
Oct 9, 2008 at 17:15
-
AFAIK, HeapWalker and VisualVM do not require Coffee 6/seven to read HPROF files.
Oct nine, 2008 at 17:58
-
I just tried to load information technology with Java 5 and it said 'Delight employ Java 6 or 7' What am I doing wrong?
Oct 9, 2008 at 18:00
-
Hmm. Perhaps yous have to run Coffee half dozen, just tin can read a Coffee 5 HPROF (perhaps that'south how I got it to work). I know you cannot create a heap-dump from Visual VM on an app running Java 5. Will update.
Oct 9, 2008 at 21:24
-
You can also use visual JVM, from coffee SDK - await for
jvisualvm.exeatJAVASDK/binfolderMar 12, 2018 at eight:45
But get the Eclipse Memory Analyzer. There's nothing meliorate out there and it's costless.
JHAT is just usable for "toy applications"
answered Oct 9, 2008 at viii:18
kohlermkohlerm
2,586 1 gold badge 17 silvery badges 21 bronze badges
iv
-
JHAT is necessary for impressing those "l33t" hackers who mitt-build a BSD distro starting with the LILO. Wait... they'd never use java anyhow. :-)
Oct nine, 2008 at xvi:43
-
I remember this is more than of a annotate... :\
Nov 28, 2017 at 17:36
-
Yeah, JHAT is for "toy applications". I had a dump file (9GB), JHAT runs almost 30 mins with 20GB heap and fails with OOM finally. The Eclipse Memory Analyzer handles it with 15GB heap inside one min.
Jul half dozen, 2021 at 20:46
-
when I open a three GB dump file, The Eclipse Memory Analyzer, evidence out of memory error and unable to open the dump file. Windows 10/JRE17 - An internal mistake occurred during: "Parsing heap dump from 'D:\java_pid12269.hprof'". java.lang.OutOfMemoryError
October 4, 2021 at ten:54
I personally prefer VisualVM. One of the features I like in VisualVM is heap dump comparison. When y'all are doing a heap dump assay there are diverse ways to become about figuring out what caused the crash. One of the ways I have found useful is doing a comparison of good for you vs unhealthy heap dumps.
Following are the steps you can follow for it :
- Getting a heap dump of OutOfMemoryError let's call it "oome.hprof". You lot tin get this via JVM parameter HeapDumpOnOutOfMemoryError.
- Restart the application allow information technology run for a bit (minutes/hours) depending on your application. Become another heap dump while the application is still running. Let'due south call information technology "healthy.hprof".
- You can open both these dumps in VisualVM and practice a heap dump comparison. You can practise it on class or package level. This tin oftentimes point you into the management of the event.
link : https://visualvm.github.io
answered Mar 4, 2020 at 8:58
WaleedWaleed
494 1 gold badge 6 silvery badges 17 bronze badges
YourKit Java Profiler seems to handle them too.
answered Nov ii, 2010 at 10:35
PolarisPolaris
119 one silver badge ii statuary badges
If yous want to do a custom analysis of your heapdump then in that location's:
- JVM Heap Dump Analysis library https://github.com/aragozin/heaplib/tree/chief/hprof-heap
This library is fast simply you will need to write your analysis code in Java.
From the docs:
- Does not create any temporary files on disk to procedure heap dump
- Can work direct GZ compressed heap dumps
- HeapPath notation
answered Jun 6, 2018 at 11:24
AndrejsAndrejs
26.2k 11 gilt badges 105 silverish badges 92 bronze badges
1
-
Link is no more active.
May seven, 2021 at 10:19
Source: https://stackoverflow.com/questions/185893/how-do-i-analyze-a-hprof-file

I'd but like to add a +100 for Eclipse Retentivity Analyzer. I'm currently attempting to sift thru a 400mb+ heap dump file, and it took jhat more 70 minutes to read the file, before information technology acquired a complete JVM crash. EMA is able to open up information technology upward in < 5 minutes.
Jun 18, 2009 at xviii:37
I keep getting parsing errors when opening HPROF files using the Eclipse Memory Analyzer (that were in fact also dumped by Eclipse!). Unfortunate.. sigh.
December 14, 2011 at 22:sixteen
MAT tin can nonetheless require quite a fleck of RAM [less than JHAT but all the same quite a bit]. See stackoverflow.com/questions/7254017/… for tips if you run into that happening.
Mar 30, 2015 at 23:43
Error opening heap dump 'strictmode-death-penalty.hprof'. Check the error log for further details. Fault opening heap dump 'strictmode-death-penalty.hprof'. Check the error log for further details. Unknown HPROF Version (Coffee Profile one.0.iii) (java.io.IOException) Unknown HPROF Version (JAVA Profile one.0.3)Dec 24, 2020 at 21:30