tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Thomas <>
Subject Re: Setting the Right Amount of Memory
Date Mon, 21 Jun 2010 07:02:50 GMT
On 21/06/2010 04:15, Caldarale, Charles R wrote:
>> From: Caldarale, Charles R []
>> Subject: Re: Setting the Right Amount of Memory
>> Unreachable (dead) objects are never encountered,
>> so their number or size does not come into play.
> For complete disclosure, I should note that dead objects in the tenured (old) and permanent
generations are looked at (but only during a full GC), since the compaction phase has to figure
out where the live ones can be copied to.  However, since in nearly all cases, more than 90%
of dead objects are in the young generation, few dead objects are examined and the cost is
minimal.  The "compaction" phase for the young generation (minor GC) actually consists of
copying the live objects to a survivor space, which is guaranteed to be empty.

So what is the impact say (picking some random numbers of the air) if
you have an app that is quite happy with 256MB of heap space but has
1024MB allocated? I understand from what you have written that for the
young gen there isn't much impact but what about the old gen when there
is a full GC? Does the fact that there is (roughly) 700MB of additional
dead objects slow down the full GC and if so, is it significant? It
could easily represent an order of magnitude increase is the memory used
by dead objects.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message