Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » Memory Analyzer (MAT) » Perm gem space taken by classloader or class definition
Perm gem space taken by classloader or class definition [message #498303] Mon, 16 November 2009 07:10 Go to next message
Jose Fermin Alvarez is currently offline Jose Fermin Alvarez
Messages: 1
Registered: November 2009
Junior Member
I'm analyzing a heap dump in MAT from a application having a OutOfMemoryError: PermGen full error.
According to The unknown generation perm blog post , the
Class Loader Explorer report shows the list of classloaders and a list of defined classes per classloader.

How can I get the perm gem space is taken by a specific classloader or class definition?

Thanks
Jose Fermin Alvarez
Re: Perm gem space taken by classloader or class definition [message #498416 is a reply to message #498303] Mon, 16 November 2009 15:00 Go to previous message
Andreas Buchen is currently offline Andreas Buchen
Messages: 113
Registered: July 2009
Senior Member
Hi Jose,

unfortunately, the HPROF heap dump does not contain size information about the perm space. In that respect, the class loaders and the number of classes give an indication of the pem space used, but no exact numbers.

If you happen to use the SAP JVM (and have the SAP Extension to the MAT installed), you can get a little bit more information. It will print information about the perm size per class. However, this data is also very difficult to interpret.

From my experience, I would look at (a) duplicate classes, (b) class loaders which are kept alive even though they should be removed, (c) check whether you can avoid generating too many classes and (d) do not deploy stuff not needed. Often, however, one needs to increase the perm space... Sad


Best wishes,

Andreas.
Previous Topic:using "dominatorof" in query
Next Topic:Any plans to support C++?
Goto Forum:
  


Current Time: Tue Sep 02 07:57:34 EDT 2014

Powered by FUDForum. Page generated in 0.08888 seconds