RFR (M) 8240671: Shenandoah: refactor ShenandoahPhaseTimings
Aleksey Shipilev
shade at redhat.com
Fri Mar 6 12:01:59 UTC 2020
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}
--
Thanks,
-Aleksey
More information about the hotspot-gc-dev
mailing list