RFR (M) 8240671: Shenandoah: refactor ShenandoahPhaseTimings

Zhengyu Gu zgu at redhat.com
Fri Mar 6 15:17:50 UTC 2020


Nice cleanup. Looks good to me.

Thanks,

-Zhengyu

On 3/6/20 7:01 AM, Aleksey Shipilev wrote:
> RFE:
>    https://bugs.openjdk.java.net/browse/JDK-8240671
> 
> Webrev:
>    https://cr.openjdk.java.net/~shade/8240671/webrev.01/
> 
> Tour of changes:
> 
>   *) SHENANDOAH_GC_PHASE_DO macro now uses the sub-macro root definition block that now guarantees
> that we list the roots in the same order! Also makes the macro itself much shorter.
> 
>   *) ShenandoahWorkerTimings middle-man is eliminated by inlining straight into
> ShenandoahPhaseTimings. This removes some redundant jumping around. Plus, eliminates it at every use
> of ShenandoahWorkerTimingsTracker!
> 
>   *) ShenandoahGCPhase is now responsible for measuring the time, which simplifies _timing_data and
> ShenandoahPhaseTimings interface.
> 
>   *) shenandoahTimingTracker.* are gone, ShenandoahWorkerTimingsTracker implementation moved to
> shenandoahPhaseTimings.*, as it does not carry its own weight at this point.
> shenandoahPhaseTimings.* would be renamed at some point in the future.
> 
> Testing: hotspot_gc_shenandoah {fastdebug,release}
> 




More information about the hotspot-gc-dev mailing list