RFR: Cleanup and refactor Full GC code

Roman Kennke rkennke at redhat.com
Wed Nov 29 19:51:08 UTC 2017


> 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.

Roman


More information about the shenandoah-dev mailing list