RFR (S): 8155233: Lazy coarse map clear
Thomas Schatzl
thomas.schatzl at oracle.com
Thu Apr 28 21:57:54 UTC 2016
Hi Jon,
On Thu, 2016-04-28 at 14:00 -0700, Jon Masamitsu wrote:
>
> On 04/28/2016 01:10 PM, Thomas Schatzl wrote:
> >
> > Hi Jon,
> >
> > On Thu, 2016-04-28 at 10:59 -0700, Jon Masamitsu wrote:
> > >
> > > http://cr.openjdk.java.net/~tschatzl/8155233/webrev/src/share/vm/
> > > gc/g
> > > 1/heapRegionRemSet.cpp.frames.html
> > >
> > > When is this not sufficient
> > >
> > > 526 _coarse_dirty = _n_coarse_entries != 0;
> > >
> > > such that you need to set _coarse_dirty here?
> > >
> > > 508 _coarse_dirty = true;
> > Not completely sure about the question, these seem to be unrelated.
> > 508
> > deals with the case when we set any bit in the coarse bitmap while
> > adding any references. If so, we can't optimize out the clear() in
> > line
> > 652, when the remembered set should be freed.
> What I thought was that since _n_coarse_entries was being incremented
> at the same time as _coarse_dirty was being set to true
Now I understand. Yes, that's much better, thanks.
New webrev:
http://cr.openjdk.java.net/~tschatzl/8155233/webrev.1_to_2/ (diff)
http://cr.openjdk.java.net/~tschatzl/8155233/webrev.2/ (full)
Thanks,
Thomas
More information about the hotspot-gc-dev
mailing list