TenuringThreshold being adaptive when UseAdaptiveSizePolicy is off

Jungwoo Ha jwha at google.com
Sat Mar 7 02:03:17 UTC 2015


I think it is the same for all JDK{7,8,9}.

arguments.cpp disabled UseAdaptiveSizePolicy for CMS.
parallel scavange initializes _tenuring_threshold with
  _tenuring_threshold = (UseAdaptiveSizePolicy) ? InitialTenuringThreshold
: MaxTenuringThreshold;
whereas CMS uses
  _tenuring_threshold = MaxTenuringThreshold;

adjust_desired_tenuring_threshold() is called inside
ParNewGeneration::collect(), which calls compute_tenuring_threshold.
It only uses MaxTenuringThreshold and TargetSurvivorRatio.
I don't see any other flags here.

On Fri, Mar 6, 2015 at 4:28 PM, Jon Masamitsu <jon.masamitsu at oracle.com>
wrote:

> This is in jdk9?
>
> Jon
>
>
> On 3/6/2015 4:21 PM, Jungwoo Ha wrote:
>
>> On CMS when UseAdaptiveSizePolicy is off, still tenuring_threshold is
>> being changed.
>> Is this an intended behavior?
>> (yes. I know it is not "size" related heuristics)
>>
>> It would be nice to have a flag that can disable adjusting tenuring
>> threshold,
>> or at least set minimum threshold. When the default heuristics doesn't
>> work,
>> there are nothing much we can do other than changing the Max.
>>
>> --Jungwoo
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20150306/3b9b2d45/attachment.htm>


More information about the hotspot-gc-dev mailing list