RFR(S): 7121496: G1: do the per-region evacuation failure handling work in parallel
Tony Printezis
tony.printezis at oracle.com
Fri Jan 6 08:51:52 UTC 2012
John,
Looks good, ship it asap. :-)
Tony
On 01/05/2012 02:55 PM, 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