On May 31, 2011, at 6:30 AM, Timothy Ward wrote:

> 
> Hi,
> 
> My guess would be that this occurs when we create dynamic proxy objects for 
> interfaces and isn't related to the load-time weaving at all (although the 
> code was added at the same time). We end up with one classloader per set of 
> interfaces we get asked to proxy, and we only cache the 64 (I think) most 
> recently used classloaders for reuse. This does lead to quite a lot of 
> classloaders, which has probably caused the increase in permgen usage. I can 
> take a look at the code to try and make it a bit less classloader happy, but 
> I also think this is yet another issue with Sun's use of PermGen!

Meh. I wouldn't blame PermGen. Looks like you're using about 60 megs worth of 
additional memory.  No matter what you call it: PermGen or heap, it all 
counts...

> Increasing PermGen should avoid any problems, I/We can try to improve the 
> caching/reuse of classloaders to reduce the permgen load as well if you like.

Seems like it's definitely worth a look.

--kevan

Reply via email to