tags:

views:

198

answers:

3

Hi,

I need to now when does jvm produce hprof dumps other than out of memory situations. Eg, does it produce an hprof when there is a high cpu usage? I see hprof files produces and there is no out of memory situation.

Thanks

A: 

I does 'automatically' produce a heap dump only when out of memory and if it was configured to do so at startup (for example -XX:-HeapDumpOnOutOfMemoryError for a sun JVM)...

But you can also send a signal to the JVM to request for a dump (for example kill -Quit pid) on solaris...

So it depends on the OS and on the JVM but it is possible to ask for a dump...

pgras
The dump is on solaris but I have a 70mb dump where the max heap size is 1 GB. Also the dump doesn't look like an out of memory dump. And no one has requested for that dump.
onur
A: 

In adition the JVM creates a core dump when a native library throws an expception.

David de Juan
I don't mean core dumps. I have an _pid.hprof dump which is 80 mbs and the max heap size is 1 gb. I can't see an out of memory situation on the dump. There must be something else.
onur
A: 

What command-line JVM options are passed when starting your application? There are many HPROF options; some, like cpu=samples, write out a dump file every time the JVM exits.

Woody Zenfell III