RFR (S): 8150630: Add logging for ParScanThreadState merge phase

Jon Masamitsu jon.masamitsu at oracle.com
Thu Feb 25 15:09:39 UTC 2016


http://cr.openjdk.java.net/~tschatzl/8150630/webrev/src/share/vm/gc/g1/g1GCPhaseTimes.cpp.frames.html

416 print_stats(Indents[2], "Merge PSS", _recorded_merge_pss_time_ms);

I would appreciate a label easier for me to understand such as

"Merge parallel threads data"

or

"Merge parallel threads data (PSS)"

Otherwise, looks good.

Jon

On 2/25/2016 5:35 AM, Thomas Schatzl wrote:
> Hi all,
>
>    can I have reviews for this small addition to the logging? It
> measures the time gc takes for merging the information gathered by gc
> worker threads down into the global state.
>
> Recent work has shown that this phase may take a long time, because it
> is O(#threads * size(young gen)), which is particularly bad on large
> machines with a large young gen (like 200 threads, 20k young gen
> regions). So I thought it would be nice to get timing measurement to
> increase awareness of the problem. Or at least be able to rule it out
> as a problem...
>
> Again, I factored out the "phase" into an extra method to have all
> relevant code together (timing + actual work).
>
> This change is based on the changes for JDK-8076463.
>
> CR:
> https://bugs.openjdk.java.net/browse/JDK-8150630
> Webrev:
> http://cr.openjdk.java.net/~tschatzl/8150630/webrev/
> Testing:
> jprt, test case
>
> Thanks,
>    Thomas




More information about the hotspot-gc-dev mailing list