RFR: 8152100 : Rework and unify the GC phase logging
Stefan Karlsson
stefan.karlsson at oracle.com
Thu Mar 17 13:29:53 UTC 2016
Hi all,
Please review and comment on this patch to rework and unify the GC phase
logging.
http://cr.openjdk.java.net/~stefank/8152100/webrev.00/
https://bugs.openjdk.java.net/browse/JDK-8152100
The patch:
1) Adds the 'phases' tag to all GCTraceTimer calls, except those that
correspond to the top-level GC measurement that is logged when -Xlog:gc
is used.
2) Change the 'phases' levels so that:
- Info - gives the first-level GC phase, such as marking, sweeping, etc.
- Debug - also gives better breakdown of what we do in the different
phases: reference processing, unloading, string table scrubbing, etc.
- Trace - also gives non-descriptive phases that we might want to
cleanup our restructure.
3) Moved "gc, compaction, phase" to "gc, compaction", so that
-Xlog:gc+phases*=trace is usable.
4) Added and removed some phases so that the different GCs log similar
phases.
Examples of what this looks like in our different GCs can be found
below. The logs where produced with -Xlog:gc,start*,gc+phases=<level>.
Serial GC:
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.serial.off.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.serial.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.serial.debug.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.serial.trace.txt
Parallel GC:
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.parallel.off.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.parallel.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.parallel.debug.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.parallel.trace.txt
CMS with a Full GC:
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms.off.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms.debug.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms.trace.txt
CMS with a concurrent GC cycle:
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms-conc.off.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms-conc.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms-conc.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.cms-conc.trace.txt
G1 with a Full GC:
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1.off.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1.debug.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1.trace.txt
G1 with a concurrent GC cycle:
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1-conc.off.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1-conc.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1-conc.info.txt
http://cr.openjdk.java.net/~stefank/8152100/logs.00/gctracetimer.g1-conc.trace.txt
Thanks,
StefanK
More information about the hotspot-gc-dev
mailing list