RFR: 8152100 : Rework and unify the GC phase logging

Stefan Karlsson stefan.karlsson at oracle.com
Thu Mar 17 14:50:28 UTC 2016


Thanks, Stefan.

StefanK

On 2016-03-17 15:09, Stefan Johansson wrote:
> 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