ZDirector::one_in_1000 right-tailed vs two-tailed value
Per Liden
per.liden at oracle.com
Mon Jun 14 09:43:44 UTC 2021
On 6/11/21 5:32 PM, Chris Thunes wrote:
> Apologies if this is the wrong place to direct this question.
This is the right place.
> I noticed that the ZDirector::one_in_1000 constant
> (https://github.com/openjdk/zgc/blob/master/src/hotspot/share/gc/z/zDirector.cpp#L33)
> seems to use a sigma value corresponding to a two-tailed test. Would
> the right-tailed value (3.090232) make more sense in this case, given
> that it is only high allocation rates and GC durations which would be
> of concern for the allocation rate rule?
You are correct that we're only really interested in one of the tails.
At the same time it's not important that it exactly matches 1/1000 (i.e.
that the variable could just as well have been called "sigma",
"one_in_2000" or something). The sigma we use has just shown to work
well in practice.
One can also argue whether the data is normally distributed in the first
place (given that applications can shift phases, etc), but this model
has shown to be a fairly good approximation.
/Per
More information about the zgc-dev
mailing list