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 matter.
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 strategy. 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. Tim On Feb 8, 2017 8:34 AM, "abhijith" <topcoderabhij...@gmail.com> 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. nabble.com/Artems-ParallelGC-vs-CMS-tp4721722p4721737.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.