RFR(s): 8068344: G1GC concurrent marking time report is not accurate

Bengt Rutisson bengt.rutisson at oracle.com
Thu Apr 7 08:12:55 UTC 2016


Hi Sangheon,

On 2016-04-07 00:48, sangheon wrote:
> Hi all,
>
> Please review this change to enhance G1 concurrent mark time report.
>
> This patch includes 2 changes.
> 1. Include cleanup time at virtual time of ConcurrentMarkThread class: 
> Looking at the comment, cleanup was expected to be small enough to be 
> ignored but actually it isn't. And this CR is requesting to include it.
>
> 2. Remove '_init_mark' which is not used.
>
> This CR also mentioned about 2 more items but #3 is resulted from 
> misunderstanding of the log and #4 is already fixed.
>
> CR: https://bugs.openjdk.java.net/browse/JDK-8068344
> Webrev: http://cr.openjdk.java.net/~sangheki/8068344/webrev.00
> Testing: JPRT, local test to measure the time report

Thanks for fixing this. It looks good to me. One question:

What do you think about moving lines 192-193 to below line 211 in the 
new file?

http://cr.openjdk.java.net/~sangheki/8068344/webrev.00/src/share/vm/gc/g1/concurrentMarkThread.cpp.sdiff.html

Then we wouldn't need the changes on lines 201-204. And it kind of makes 
sense to say that the marking time ends when we set mark_in_progress to 
false (which is done in the CMCleanUp closure and explicitly in the else 
case).

Thanks,
Bengt

>
> Thanks,
> Sangheon



More information about the hotspot-gc-dev mailing list