[15] RFR 8244243: Shenandoah: Cleanup Shenandoah phase timing tracking and JFR event supporting

Zhengyu Gu zgu at redhat.com
Fri May 1 17:08:23 UTC 2020


Hi,

Please review this patch that intends to cleanup Shenandoah phase timing 
tacking and JFR event supporting.

Currently, there are a few classes involving GC phase timing tracking 
and JFR event generating, but they are not well defined. For example, 
ShenandoahGCPhase does not emit JFR event, but ShenandoahGCSubPhase does.

The patch draws line:

ShenandoahGCPhaseTiming: only tracks Shenandoah specific timing, but 
does not emit JFR event.

ShenandoahPausePhase, ShenandoahConcurrentPhase and ShenandoahGCPhase: 
track Shenandoah specific timings and also emit JFR events.

Due to limited nesting levels of pause events, it has to workaround an 
issue when a degenerated GC upgrades to full GC, it potential overflows 
maximum nesting levels.

Also, the patch adds missing JFR worker events.


Bug: https://bugs.openjdk.java.net/browse/JDK-8244243
Webrev: http://cr.openjdk.java.net/~zgu/JDK-8244243/webrev.00/index.html

Test:
   hotspot_gc_shenandoah
   Eyeball events in jmc

Thanks,

-Zhengyu



More information about the shenandoah-dev mailing list