RFR(S): 7121496: G1: do the per-region evacuation failure handling work in parallel
Igor Veresov
igor.veresov at oracle.com
Fri Jan 6 01:26:41 UTC 2012
Thanks for doing that! Looks good.
igor
On Thursday, January 5, 2012 at 11:55 AM, John Cuthbertson wrote:
> Hi Everyone,
>
> I have a new webrev for this CR based upon feedback from Tony and Igor.
> The biggest difference is the moving of the closures and abstract gang
> task that removes the self-forwared pointers into their own header file.
>
> The new webrev can be found at:
> http://cr.openjdk.java.net/~johnc/7121496/webrev.1/
>
> Thanks,
>
> JohnC
>
> On 12/23/2011 11:29 AM, John Cuthbertson wrote:
> > Hi Everyone,
> >
> > Can I have a couple of volunteers look of this set of changes? The
> > webrev can be found at:
> > http://cr.openjdk.java.net/~johnc/7121496/webrev.0/
> >
> > Summary:
> > The work that gets done for each heap region in the collection set, in
> > the event of an evacuation failure, (e.g. removing self-forwarding
> > pointers, updating the BOT etc.) was serial. I parallelized it by
> > simply wrapping the work done for each region inside a HeapRegion
> > closure, whose doHeapRegion method claims a region and does the work
> > for that region. This HeapRegion closure is, in turn, wrapped in an
> > AbstractGangTask.
> >
> > Testing: GC test suite with both deferred and immediate RSet updates
> > (in some of the configurations - SPECjbb2000, SPECjbb2005, and
> > GCBasher can experience a number of evacuation failures); Kitchensink
> > with a forced evacuation failure mechanism.
> >
> > Thanks,
> >
> > JohnC
More information about the hotspot-gc-dev
mailing list