RFR: 8317371: GenShen: Needs improved support for humongous allocation [v14]

William Kemper wkemper at openjdk.org
Mon Oct 23 17:18:15 UTC 2023


On Fri, 20 Oct 2023 17:43:13 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

>> Several improvements:
>> 1. If there is a humongous allocation failure, go immediately to Full GC rather than trying 64 degenerated GC first
>> 2. Reduce likelihood of humongous allocation errors by:
>>     a. Allocating regular objects from top end of memory while allocating humongous from bottom end of memory
>>     b. (Especially) in the case that regular regions that are promoted in place reside within the bottom end of memory, detect that old-gen memory has become fragmented and trigger old-gen GC, which will make a special effort to move these out-of-place old-gen regions to higher addresses.
>
> Kelvin Nilsen has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 22 commits:
> 
>  - Merge remote-tracking branch 'origin/master' into improve-humongous-allocations
>  - Allow for no old regions in assertion
>  - One more try at this assertion
>  - Fix assert to deal with humongous old
>  - Add a comment
>  - Fix assertion to deal with humongous accounting
>  - Restore ShenandoahFullGCThreshold to 3
>  - In-line two small single-use functions
>  - Restore _humongous_alloc_failure_gc flag removed in merge conflict
>  - Merge master
>  - ... and 12 more: https://git.openjdk.org/shenandoah/compare/e6c788e0...07f7f1f9

Typo in log fragmentation trigger's log message

src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.cpp line 174:

> 172: 
> 173:   {
> 174:     // TODO: Not sure there is value in logging free-set status right here

Doesn't early cleanup rebuild the freeset?

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

Changes requested by wkemper (Committer).

PR Review: https://git.openjdk.org/shenandoah/pull/336#pullrequestreview-1693090361
PR Review Comment: https://git.openjdk.org/shenandoah/pull/336#discussion_r1369003428


More information about the shenandoah-dev mailing list