RFR (XS) 8245755: Shenandoah: missing logging for CWR Roots

Roman Kennke rkennke at redhat.com
Mon May 25 20:24:21 UTC 2020


Yes, looks good!

Roman

On Mon, 2020-05-25 at 21:16 +0200, Aleksey Shipilev wrote:
> Bug:
>   https://bugs.openjdk.java.net/browse/JDK-8245755
> 
> JDK-8244953 introduced the Roots/Rendezvous split in CWR logging.
> Yet, there is no "Roots" counter
> in the gc+stats, because there is nothing that tracks it.
> 
> Fix:
> 
> diff -r 403587ab7d6e
> src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp
> --- a/src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp        Mon
> May 25 21:02:37 2020 +0200
> +++ b/src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp        Mon
> May 25 21:14:26 2020 +0200
> @@ -1852,12 +1852,13 @@
>    }
>  };
> 
>  void ShenandoahHeap::op_weak_roots() {
>    if (is_concurrent_weak_root_in_progress()) {
>      {
> +      ShenandoahTimingsTracker
> t(ShenandoahPhaseTimings::conc_weak_roots_work);
>        ShenandoahGCWorkerPhase
> worker_phase(ShenandoahPhaseTimings::conc_weak_roots_work);
>        ShenandoahConcurrentWeakRootsEvacUpdateTask
> task(ShenandoahPhaseTimings::conc_weak_roots_work);
>        workers()->run_task(&task);
>        if
> (!ShenandoahConcurrentRoots::should_do_concurrent_class_unloading())
> {
>          set_concurrent_weak_root_in_progress(false);
> 
> Testing: hotspot_gc_shenandoah, eyeballing gc+stats
> 



More information about the shenandoah-dev mailing list