class metadata

kirk kirk.pepperdine at gmail.com
Mon Oct 13 17:01:56 UTC 2008


Hi Ramki,

Yes, the size is suspiciously large which is why I don't suspect the 
bootstrap classloader. I'll get a permspace histo. Unfortunately I can't 
use the 1.6 as I'm tied in by JBoss. We do have a proper staging 
environment which I'm going to move to. I was just trying to get a 
characterization of the problem in prod prior to putting a proper heap 
profiler to work.

Thanks for you conformation of my suspicions.

Regards,
Kirk

Y Srinivas Ramakrishna wrote:
>> Thanks. Running the default collectors so I'm believing that these 
>> should be collected. These are from the C++ layer?
>>     
>
> Sorry, i was not very clear. No, this is from the JVM's representation of
> the classes used by the application that the JVM is running.
> It's possible that the classes here are in fact being actively
> used by your application and/or represent the classes that were
> loaded by the system class-loader and will therefore never be unloaded?
> (although the total size occupied by them here appears suspiciously
> large.) Check "jmap -permstat" for more information; you might also
> want to try a more recent jvm perhaps.
>
> best.
> -- ramki
>
>
>   
>> Regards,
>> Kirk
>>
>> Y Srinivas Ramakrishna wrote:
>>     
>>> These are class meta-data that live in the perm gen.
>>>
>>> -- ramki
>>>
>>> ----- Original Message -----
>>> From: kirk <kirk.pepperdine at gmail.com>
>>> Date: Monday, October 13, 2008 8:56 am
>>> Subject: Re: CMS collection keep working during holiday
>>> Cc: hotspot-gc-dev at openjdk.java.net
>>>
>>>
>>>   
>>>       
>>>> Hi,
>>>>
>>>> I've got a histogram that includes a number of classes that I've 
>>>>         
>> not 
>>     
>>>> seen at the top of a histogram just yet. This is a pre-gc histogram 
>>>>         
>>>> from 
>>>> the 1.5.0_15. Any thoughts on what might cause these to build up?
>>>>
>>>>       1 Object Histogram:
>>>>       2
>>>>       3 Size    Count   Class description
>>>>       4 -------------------------------------------------------
>>>>       5 2009570160      35394   int[]
>>>>       6 25703600        237926  char[]
>>>>       7 23512384        20129   byte[]
>>>>       8 18761568        144582  * ConstMethodKlass   <----
>>>>       9 10416360        144582  * MethodKlass            <----
>>>>      10 8144800 194428  * SymbolKlass                   <----
>>>>      11 7925040 13619   * ConstantPoolKlass            <----
>>>>      12 6832800 284700  java.lang.String
>>>>      13 5619232 13619   * InstanceKlassKlass            <----
>>>>      14 4503280 11914   * ConstantPoolCacheKlass    <----
>>>>      15 3498664 37130   java.util.HashMap$Entry[]
>>>>      16 3116000 97375   java.util.TreeMap$Entry
>>>>      17 3067808 37737   java.lang.Object[]
>>>>      18 2498800 31235   java.lang.reflect.Method
>>>>      19 2364600 98525   java.util.HashMap$Entry
>>>>      20 1683520 42088   org.apache.velocity.runtime.parser.Token
>>>>      21 1626552 5532    * MethodDataKlass          <----
>>>>
>>>> Regards,
>>>> Kirk Pepperdine
>>>>
>>>>     
>>>>         
>>>   
>>>       
>
>   




More information about the hotspot-gc-dev mailing list