RFR: 8152100 : Rework and unify the GC phase logging

Stefan Johansson stefan.johansson at oracle.com
Thu Mar 17 14:09:01 UTC 2016


Hi Stefan,

On 2016-03-17 14:29, Stefan Karlsson wrote:
> 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/
Looks good,

Stefan

> 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