RFR: Add humongous regions support to partial GC

Aleksey Shipilev shade at redhat.com
Thu Mar 16 13:26:02 UTC 2017


On 03/16/2017 02:10 PM, Roman Kennke wrote:
> This adds support for humongous regions as root regions in partial GC.
> 
> I extended the ShenandoahHeapRegion::oop_iterate() to iterate over a
> subset of a humongous object array (bounded by the region). This way we
> avoid scanning the whole humongous object if the matrix only gives us a
> single region as root.
> 
> Tested using gc-bench/arrayfragger (which crashed before).
> 
> http://cr.openjdk.java.net/~rkennke/partial-humongous/webrev.00/

Um.

 *) I am blind! Who sets humongous_obj_array?

 *) There is a weird disconnect: assume we call oop_iterate on a humongous
region *head*. With primitive array, it would touch the array oop. With object
array, it would only touch the array contents?

-Aleksey



More information about the shenandoah-dev mailing list