Question about hprof binary heap dump format

Greg Bowyer gbowyer at fastmail.co.uk
Sat Mar 31 20:26:50 PDT 2012


Hi all,

This is probably the wrong forum to ask however.

I am writing a simple C program that can take hprof heap dumps (the ones 
from OutOfMemoryError) and extract out a few interesting statistics from 
them.

When I dump out the HPROF_HEAP_SUMMARY record I am surprised to find 
that I get multiple heap summaries, is this a summary for each region in 
the heap, is it a deprecated record type or am I missing some deeper truth.

Also for my 8Gb used / 12Gb max heap (a ~7.9Gb hprof file) I cant 
reconcile the numbers I see for the allocated bytes to fit with what I 
would expect the regions to be, I am assuming that the attributes for 
the heap summaries records are encoded as big endian (however if I treat 
these things as little endian, I also get odd numbers)

Are there any pointers to what I am doing wrong here ?

-- Greg

--- %< ---
Heap summary:
     Reachable bytes=0
     Reachable instances=285292896
     Allocated bytes=1986080617
     Allocated instances=1886745683

Heap summary:
     Reachable bytes=5
     Reachable instances=597250776
     Allocated bytes=0
     Allocated instances=0

Heap summary:
     Reachable bytes=0
     Reachable instances=0
     Allocated bytes=0
     Allocated instances=0

Heap summary:
     Reachable bytes=170629377
     Reachable instances=170631681
     Allocated bytes=170637825
     Allocated instances=170644737

Heap summary:
     Reachable bytes=37
     Reachable instances=1
     Allocated bytes=37
     Allocated instances=1



More information about the hotspot-gc-use mailing list