activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tim Bain <>
Subject Re: Artems: ParallelGC vs CMS
Date Thu, 09 Feb 2017 14:11:07 GMT
Did Old Gen continually increase *after* performing full GCs? That is, was
the Old Gen usage after full GC #N always greater than the Old Gen usage
after full GC #N+1? If not, you were concerned about something that doesn't

It's OK for Old Gen to grow; that's why we have a garbage collector. It
would be better if the memory got GCed out of Young Gen, but it's OK if it
makes it to Old Gen and is collected from there. Where it's a problem is
when Old Gen doesn't shrink back down after each full GC, because that
means there is more and more memory actually used, which will eventually
run you out of memory if left unchecked. But anything else is not a reason
not to use a particular product such as Artemis or a particular GC

One other note: G1 is capable of GCing Old Gen incrementally without a full
GC. In testing on ActiveMQ 5.10.0 on an early-ish Hotspot 8 JVM (it might
have been 8u5 or 8u21, though I no longer remember exactly which one), I
observed the incremental Old Gen collects to not collect objects that would
be successfully collected in the next full GC. So it's crucial that you
only consider the state of Old Gen following a full GC, not just an
incremental Old Gen collect, which is why I kept explicitly calling out
full GCs above.


On Feb 8, 2017 8:34 AM, "abhijith" <> wrote:

Yes, we tested with G1 settings in load test environment. Old gen was still
increasing with it albeit a bit slower than parallel GC, so we never moved
ahead with it.

View this message in context: http://activemq.2283324.n4.
Sent from the ActiveMQ - User mailing list archive at

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message