RFR: Refactoring GC phase and heap allocation tracking out of policy

Aleksey Shipilev shade at redhat.com
Sat Sep 23 10:50:43 UTC 2017


On 09/23/2017 02:59 AM, Zhengyu Gu wrote:
> Refactoring GC phase timing tracking and heap allocation tracking out of ShenandoahCollectorPolicy.
> 
> 
> Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/prof_refactor/webrev.00/index.html

I like it!

Would be interesting to try and conditionalize timing gathering on gc+stats. It seems wasteful to
poll timers when we don't consume the data. Does not have to be in this patch though, but maybe the
change should have that work in mind.

Few nits:

 *) ShenandoahGCPhaseTimings -> ShenandoahPhaseTimings?

 *) ShenandoahHeap::gc_phase_timings() -> ShenandoahHeap::phase_timings()?

 *) ShenandoahGCPhaseTimings::TimingPhase -> ShenandoahPhaseTimings::Phase?

 *) Do we need the forward declaration in shenandoahCollectorPolicy.hpp? outputStream was used
before in this class...

  41 class outputStream;

 *) outputStream must have cr() methods for this?

  1293     ls.print_cr("");
  1294     ls.print_cr("");


Thanks,
-Aleksey



More information about the shenandoah-dev mailing list