RFR: Refactoring GC phase and heap allocation tracking out of policy
Zhengyu Gu
zgu at redhat.com
Mon Sep 25 15:15:41 UTC 2017
On 09/23/2017 06:50 AM, Aleksey Shipilev wrote:
> 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.
Our heuristics need timing feed also.
>
> Few nits:
>
> *) ShenandoahGCPhaseTimings -> ShenandoahPhaseTimings?
>
> *) ShenandoahHeap::gc_phase_timings() -> ShenandoahHeap::phase_timings()?
>
> *) ShenandoahGCPhaseTimings::TimingPhase -> ShenandoahPhaseTimings::Phase?
>
Okay.
> *) Do we need the forward declaration in shenandoahCollectorPolicy.hpp? outputStream was used
> before in this class...
>
> 41 class outputStream;
Well, I think we should avoid indirect dependencies ...
>
> *) outputStream must have cr() methods for this?
>
> 1293 ls.print_cr("");
> 1294 ls.print_cr("");
>
Fixed.
http://cr.openjdk.java.net/~zgu/shenandoah/prof_refactor/webrev.01/
Reran all tests.
Thanks,
-Zhengyu
>
> Thanks,
> -Aleksey
>
More information about the shenandoah-dev
mailing list