RFR: 8321806: Shenandoah: each mutator must see FullGC or GC overhead limit is exceeded before throwing OOM [v4]
William Kemper
wkemper at openjdk.org
Wed Jan 24 23:24:50 UTC 2024
On Wed, 24 Jan 2024 18:26:00 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:
>> Require each thread to observe unproductive Full GC before it throws OOM exception.
>
> Kelvin Nilsen has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 12 commits:
>
> - Merge branch 'master' of https://git.openjdk.org/jdk into fix-fullgc-race
> - Restrict GCTimeLimit if ParallelGCThreads > active_processors
> - Improve message for failure of TestThreadCounts
> - Merge branch 'master' of https://git.openjdk.org/jdk into fix-fullgc-race
> - Fix whitespace
> - Fix up defaults and add quick-OOM following unproductive GCs
> - Fix allocation retry loop and update comments
> - Merge branch 'master' of https://git.openjdk.org/jdk into fix-fullgc-race
> - Implement gc_overhead_exceeds_limit support
> - Fix several bugs for GCU limit exceeded implementation
> - ... and 2 more: https://git.openjdk.org/jdk/compare/fb822e49...b46512ad
Might need to sync up with openjdk:master again.
src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp line 300:
> 298: size_t _gc_no_progress_count;
> 299:
> 300: double* _gc_historical_utilization;
Could we put these fields and the attendant functionality in `ShenandoahMmuTracker`?
src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp line 309:
> 307: intptr_t get_gc_no_progress_count_at_last_oom() const;
> 308:
> 309: void set_gc_state_all_threads(char state);
This PR looks like it is missing some recent changes, for example: https://github.com/openjdk/jdk/commit/51238c4bdbce48f6b719f7dcfe5b7df8b8c6d85b.
-------------
Changes requested by wkemper (Author).
PR Review: https://git.openjdk.org/jdk/pull/16985#pullrequestreview-1842513311
PR Review Comment: https://git.openjdk.org/jdk/pull/16985#discussion_r1465625807
PR Review Comment: https://git.openjdk.org/jdk/pull/16985#discussion_r1465624533
More information about the hotspot-gc-dev
mailing list