RFR: 8339611: GenShen: Simplify ShenandoahOldHeuristics::trigger_collection_if_fragmented [v2]
Kelvin Nilsen
kdnilsen at openjdk.org
Fri Sep 6 19:42:30 UTC 2024
On Fri, 6 Sep 2024 19:14:49 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:
>> Kelvin Nilsen has updated the pull request incrementally with three additional commits since the last revision:
>>
>> - Be less aggressive about triggering old defragmentation
>> - Revert "Be even less aggressive in triggering for old fragmentatino"
>>
>> This reverts commit 8edad5b29b40774073a2a9dc464217341a3e6220.
>> - Be even less aggressive in triggering for old fragmentatino
>
> src/hotspot/share/gc/shenandoah/heuristics/shenandoahOldHeuristics.cpp line 570:
>
>> 568: if ((old_span_percent >= 0.50) && (old_density / old_span_percent_squared < 0.75)) {
>> 569: // We trigger old defragmentation, for example, if:
>> 570: // old_span_percent is 100% and old_density is below 75.0%, or
>
> Note that old_span_percent may be greater than 100%. Can add comment:
> old_span_percent is 110% and old_density is below 90.8%, or
>
> At higher existing utilization, there is less benefit to defragmenting, because there are diminishing returns for the larger efforts. We're just copying nearly full regions around...
But if we are at 110% old_span_percent, we have violated our intended Humongous Reserves, so I'm thinking we should try to squeeze that last 10% out of old so we don't have to STW on the next humongous allocation request...
-------------
PR Review Comment: https://git.openjdk.org/shenandoah/pull/492#discussion_r1747631843
More information about the shenandoah-dev
mailing list