<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<div class="moz-cite-prefix">On 3/10/2015 4:59 AM, Jungwoo Ha wrote:<br>
</div>
<blockquote
cite="mid:CA+n_jhiUba8X_0uaZvL_Uasa503xsx3qJunfDUz6P1-RKRYsVw@mail.gmail.com"
type="cite">
<div dir="ltr">Tao,
<div><br>
</div>
<div>CMS no longer use InitialTenuringThreshold.</div>
<div>IIRC, even before when CMS used InitialTenuringThreshold,
setting initial and max the same value didn't turn off the
adaptiveness.</div>
</div>
</blockquote>
<br>
I think we're removing that code from CMS in jdk9<br>
<br>
compute_survivor_space_size_and_threshold()<br>
<br>
The implementation of adaptive size policy for CMS never<br>
worked correctly. Too many times it does the exact wrong<br>
thing.<br>
<br>
Jon<br>
<br>
<blockquote
cite="mid:CA+n_jhiUba8X_0uaZvL_Uasa503xsx3qJunfDUz6P1-RKRYsVw@mail.gmail.com"
type="cite">
<div dir="ltr">
<div><br>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Tue, Mar 10, 2015 at 12:23 AM, Tao
Mao <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:yiyeguhu@gmail.com" target="_blank">yiyeguhu@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">Hi Jungwoo,
<div><br>
</div>
<div>Would fixing InitialTenuringThreshold and
MaxTenuringThreshold to the same value work for you?</div>
<div><br>
</div>
<div>Thanks.</div>
<span class="HOEnZb"><font color="#888888">
<div>Tao Mao</div>
<div><br>
</div>
</font></span></div>
<div class="HOEnZb">
<div class="h5">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Mar 9, 2015 at 10:39
PM, Jungwoo Ha <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:jwha@google.com" target="_blank">jwha@google.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">We were investigating some features
and figured out that ParallelScavange and ParNew
has different TenuringTreshold heuristics.
<div>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.</div>
<span><font color="#888888">
<div>--Jungwoo</div>
</font></span></div>
<div>
<div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Mar 9, 2015
at 11:27 AM, Jon Masamitsu <span
dir="ltr"><<a moz-do-not-send="true"
href="mailto:jon.masamitsu@oracle.com"
target="_blank">jon.masamitsu@oracle.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="margin:0 0 0 .8ex;border-left:1px
#ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
Jungwoo,<span><br>
<br>
<div>On 03/06/2015 06:03 PM, Jungwoo
Ha wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">I think it is the
same for all JDK{7,8,9}.
<div><br>
</div>
<div>arguments.cpp disabled
UseAdaptiveSizePolicy for CMS.</div>
<div>parallel scavange
initializes
_tenuring_threshold with</div>
<div> _tenuring_threshold =
(UseAdaptiveSizePolicy) ?
InitialTenuringThreshold :
MaxTenuringThreshold;</div>
<div>whereas CMS uses</div>
<div> _tenuring_threshold
= MaxTenuringThreshold;</div>
<div><br>
</div>
<div>adjust_desired_tenuring_threshold()
is called inside
ParNewGeneration::collect(),
which calls
compute_tenuring_threshold.</div>
<div>It only uses
MaxTenuringThreshold and
TargetSurvivorRatio.</div>
<div>I don't see any other flags
here.<br>
</div>
</div>
</blockquote>
<br>
</span> Yes, this is the intended
behavior.<br>
<br>
You're saying we're sometimes wasting
survivor space?<span><font
color="#888888"><br>
<br>
Jon</font></span><span><br>
<br>
<blockquote type="cite">
<div class="gmail_extra"><br>
<div class="gmail_quote">On Fri,
Mar 6, 2015 at 4:28 PM, Jon
Masamitsu <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:jon.masamitsu@oracle.com"
target="_blank">jon.masamitsu@oracle.com</a>></span>
wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0 0 0
.8ex;border-left:1px #ccc
solid;padding-left:1ex">This
is in jdk9?<span><font
color="#888888"><br>
<br>
Jon</font></span>
<div>
<div><br>
<br>
On 3/6/2015 4:21 PM,
Jungwoo Ha wrote:<br>
<blockquote
class="gmail_quote"
style="margin:0 0 0
.8ex;border-left:1px
#ccc
solid;padding-left:1ex">
On CMS when
UseAdaptiveSizePolicy
is off, still
tenuring_threshold is
being changed.<br>
Is this an intended
behavior?<br>
(yes. I know it is not
"size" related
heuristics)<br>
<br>
It would be nice to
have a flag that can
disable adjusting
tenuring threshold,<br>
or at least set
minimum threshold.
When the default
heuristics doesn't
work,<br>
there are nothing much
we can do other than
changing the Max.<br>
<br>
--Jungwoo<br>
</blockquote>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</span></div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</body>
</html>