RFR: 8255984: Shenandoah: "adaptive" heuristic is prone to missing load spikes [v2]

earthling-amzn github.com+71722661+earthling-amzn at openjdk.java.net
Fri Nov 13 22:22:57 UTC 2020


On Fri, 13 Nov 2020 17:14:45 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> earthling-amzn has updated the pull request incrementally with two additional commits since the last revision:
>> 
>>  - Remove const qualifier from should_start_gc
>>    
>>    This lets the heuristics update state without const_casts.
>>  - Rename ShenandoahReactive flags to ShenandoahAdaptive flags.
>
> src/hotspot/share/gc/shenandoah/heuristics/shenandoahAdaptiveHeuristics.cpp line 332:
> 
>> 330: ShenandoahAllocationRate::ShenandoahAllocationRate(ShenandoahAdaptiveHeuristics *heuristics) :
>> 331:   _heuristics(heuristics),
>> 332:   _last_sample_time(os::javaTimeNanos()),
> 
> My IDE complains that `size_t` and `jlong` are not compatible here. That might be the problem for x86_32. Note that existing heuristics code uses `os::elapsedTime()`, which returns `double`. Is there a reason not to use it?

Changed to use `os::elapsedTime` .

-------------

PR: https://git.openjdk.java.net/jdk/pull/1099



More information about the hotspot-gc-dev mailing list