G1GC Full GCs

Peter Schuller peter.schuller at infidyne.com
Sun Jan 23 08:21:13 UTC 2011

>  - most of the time no old gen regions are selected for collection at all!
> Here's a graph of just old regions:
> http://people.apache.org/~todd/hbase-fragmentation/old-regions.png

This is consistent with my anecdotal observations as well and I
believe it is expected. What I have observed happening is that
non-young (partial) collections always happen after the marking phases
some number of times, followed by young collections only until another
marking phase is triggered and completed.

I think this makes sense because region selection is based on cost
heuristics largely based on liveness data from marking. So you have
your marking phase followed by a period of decreasing availability of
non-young regions that are eligible for collection given the GC
efficiency goals (and the pause time goals), until there are 0 such.
Young collections then continue until unrelated criteria trigger a new
marking phase, giving non-young regions a chance again to get above
the eligibility watermark.

/ Peter Schuller
hotspot-gc-use mailing list
hotspot-gc-use at openjdk.java.net

More information about the hotspot-gc-dev mailing list