Oh, probably this is just the biggest prime number that fits into a signed
16-bit number :)

On Mon, Jan 17, 2022 at 10:49 AM Su, Tao <tao...@intel.com> wrote:

> Thanks Dmitry for the information.
>
> With a few debug sessions, I found that 32531 is working well
> for any thresholds, and is also a big prime number :-).
>
>
> -----Original Message-----
> From: Dmitry Stogov <dmitrysto...@gmail.com>
> Sent: Monday, January 17, 2022 1:37 PM
> To: Su, Tao <tao...@intel.com>
> Cc: PHP internals <internals@lists.php.net>
> Subject: Re: [PHP-DEV] Reason for ZEND_JIT_COUNTER_INIT set to 32531?
>
> This it's my choice.
> This number is common for all JIT counters (hot_loop, hot_func,
> hot_return).
> It's value was selected to provide the best precision when different
> counters have different thresholds.
> Unfortunately, I can't remember the exact equations or logic I used at
> that time.
>
> Thanks. Dmitry.
>
> On Thu, Jan 13, 2022 at 1:01 PM Su, Tao <tao...@intel.com> wrote:
>
> > Hi Internal,
> > I am not sure this is a correct mail list for asking source code
> > related question.
> > If not, I am sorry. Appreciate you guys' help.
> >
> > I am reading PHP8 JIT related source code and found that zend_jit.h
> > has a magic definition ZEND_JIT_COUNTER_INIT as 32531 which I do not
> > quite understand how this number was chosen and why?
> > Anybody can provide some historic information?
> > #define ZEND_JIT_COUNTER_INIT         32531
> >
> > A code example using this definition (looks like the 2nd parameter
> > computes into a fixed number if hot_func is set by php.ini)
> > ZEND_OPCODE_TAIL_CALL_EX(zend_jit_trace_counter_helper,
> >                 ((ZEND_JIT_COUNTER_INIT + JIT_G(hot_func) - 1) /
> > JIT_G(hot_func)));
> >
> >
> > =======================================
> > Tony Su (Su, Tao)
> > make a 'lazy' programmer diligently with efficiency
> >
> >
>

Reply via email to