RFR: Cleanup and refactor Full GC code

Aleksey Shipilev shade at redhat.com
Wed Nov 29 20:11:52 UTC 2017


On 11/29/2017 08:51 PM, Roman Kennke wrote:
> 
>> http://cr.openjdk.java.net/~shade/shenandoah/fullgc-cleanup/webrev.01/
>>
>> This cleans up, refactors, and documents Full GC code better. This is a stepping stone to humongous
>> object compaction that adds more code to Full GC, and it builds on previous patches that are in
>> review.
>>
>> What is done here:
>>
>>   - methods in ShenandoahMarkCompact are now non-static, to align with ShenandoahConcurrentMark;
>>   - "copy_queues" are renamed to "worker_slices", because that's what those are;
>>   - memory management is a bit better: use automatic storage where appropriate, cluster
>> allocation/deallocation code otherwise, etc;
>>   - iterators are initialized in closure constructors, like in the rest of Shenandoah code.
>>   - trivial formatting changes;
>>   - some mention of the underlying algorithms is added, critical parts are commented;
>>
>> Testing: hotspot_gc_shenandoah
>>
>> Thanks,
>> -Aleksey
>>
> 
> Looks good to me.
> ShenandoahHeapRegionSet::next() may not be used anymore and could be removed. Your call. No need to
> post another review for this.

Right. I removed next() here:
  http://cr.openjdk.java.net/~shade/shenandoah/fullgc-cleanup/webrev.02/

-Aleksey





More information about the shenandoah-dev mailing list