TenuringThreshold being adaptive when UseAdaptiveSizePolicy is off

Tao Mao yiyeguhu at gmail.com
Tue Mar 10 07:23:11 UTC 2015


Hi Jungwoo,

Would fixing InitialTenuringThreshold and MaxTenuringThreshold to the same
value work for you?

Thanks.
Tao Mao


On Mon, Mar 9, 2015 at 10:39 PM, Jungwoo Ha <jwha at google.com> wrote:

> We were investigating some features and figured out that ParallelScavange
> and ParNew has different TenuringTreshold heuristics.
> We thought it would be nice to have a flag that can control the
> adaptiveness, so that we can fix it on purpose to isolate other performance
> factors.
> --Jungwoo
>
> On Mon, Mar 9, 2015 at 11:27 AM, Jon Masamitsu <jon.masamitsu at oracle.com>
> wrote:
>
>>  Jungwoo,
>>
>> On 03/06/2015 06:03 PM, Jungwoo Ha wrote:
>>
>> 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.
>>
>>
>> Yes, this is the intended behavior.
>>
>> You're saying we're sometimes wasting survivor space?
>>
>> Jon
>>
>>
>> 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.java.net/pipermail/hotspot-gc-dev/attachments/20150310/29bf5ffe/attachment.htm>


More information about the hotspot-gc-dev mailing list