RFR: Rehash VMOperations and cycle driver mechanics for consistency"
Roman Kennke
rkennke at redhat.com
Thu Dec 14 21:24:56 UTC 2017
Am 14.12.2017 um 17:36 schrieb Aleksey Shipilev:
> http://cr.openjdk.java.net/~shade/shenandoah/operations-cleanup/webrev.01/
>
> This is the preparation cleanup for Degenerate GC. The changes in this webrev are not about
> functionality, but about harmonizing the code for future changes.
>
> Brief tour:
>
> a) Three groups of methods are now in ShenandoahHeap: entry-points with the safepoint, entry-points
> without the safepoints, and private group that does the actual operations.
>
> b) vmop_entry_* do all the needed setup, including capturing the gross GC times (In future, we may
> report both gross and net times there, to capture these in GC logs!). These entry-points would
> initiate the safepoint and call into entry_* methods. VM_Shenandoah* operations are now the simple
> trampolines back to entry_*.
>
> c) entry_* do all the rest of needed setup (assuming safepoint or not), including figuring out the
> worker counts, recording net times, and calling into op_* methods.
>
> d) op_* is where we do the actual thing for each phase. (Spoiler alert: Degenerate GC would just
> call op_* methods in correct order, entering via single VMOp)
>
> e) Minor corrections in GCMark and stats for Full GC code
>
> f) Minor typo changes
>
> Testing: hotspot_gc_shenandoah {fastdebug|release}
>
> Thanks,
> -Aleksey
Yes, this seems cleaner and more consistent. Thanks!
Roman
More information about the shenandoah-dev
mailing list