RFR: 8152100 : Rework and unify the GC phase logging

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


Thanks, Jesper.

StefanK

On 2016-03-17 15:38, Jesper Wilhelmsson wrote:
> Looks good!
> /Jesper
>
> Den 17/3/16 kl. 14:29, skrev Stefan Karlsson:
>> 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