RFR: 8153745: Avoid spawning G1ParPreserveCMReferentsTask when there is no work to be done
Thomas Schatzl
thomas.schatzl at oracle.com
Wed Apr 13 11:20:44 UTC 2016
Hi Stefan,
On Mon, 2016-04-11 at 17:36 +0200, Stefan Johansson wrote:
> Thanks for looking at this Thomas,
>
> On 2016-04-08 13:45, Thomas Schatzl wrote:
> > Hi,
> >
> >
[...]
> > There is a difference between taking "0.0" time and not having
> > executed that is sometimes interesting to know.
> I did discuss this with Bengt before sending out the patch and for
> the debug level we currently don't have any logic for "skipped"
> phass.
> If turning on logging on trace-level the output will now look like
> this:
> [1,241s][info ][gc,phases ] GC(9) Other: 1,0ms
> [1,241s][debug][gc,phases ] GC(9) Choose CSet: 0,0ms
> [1,241s][debug][gc,phases ] GC(9) Preserve CM Refs: 0,0ms
> [1,241s][trace][gc,phases ] GC(9) Parallel Preserve CM Refs
> (ms): skipped
> [1,241s][debug][gc,phases ] GC(9) Reference Processing: 0,4ms
> [1,241s][debug][gc,phases ] GC(9) Reference Enqueuing: 0,0ms
>
> I think this is ok, but we might want to look at adding logic for
> "skipping" debug phases as well.
>
> New webrevs:
> Full: http://cr.openjdk.java.net/~sjohanss/8153745/hotspot.01/
> Inc: http://cr.openjdk.java.net/~sjohanss/8153745/hotspot.00-01/
looks good.
Thomas
More information about the hotspot-gc-dev
mailing list