Skip to Main Content

Java HotSpot Virtual Machine

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

How to troubleshoot JVM performance issues

843829Feb 1 2009 — edited Feb 20 2009
We recently had a performance issue with our application running on Java 1.4.2 on Windows where the CPU utilization was extremely high. Using the +PrintClassHistogram option I was able to determine that a char array was utilizing more than 500 megabytes of memory.

My question is, is there another option I can include or process I can follow that would help me determine which object was creating this array?

I am not a Java programmer so I apologize if this is elementary question or if I posted this in the wrong forum. I am the SA they call when the application is not running correctly. I have been reading this forum and the manuals trying to find something that would assist me. The developers will fix the problem after I pinpoint where the problem is.

We do not have any type of JVM profiler so I am trying to troubleshoot this issue with thread dumps and JVM options. My assumption is that if a profiler can retrieve the information I should be able to. Is this a correct assumption?

Lastly, if we were to purchase a profiler does anyone have a recommendation on which one to use? Our latest version of the application utilizes Java 5 so we would need something that would work with both versions of Java if possible.

Any assistance or recommendations anyone could provide would be greatly appreciated.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Mar 20 2009
Added on Feb 1 2009
11 comments
419 views