Conversation
MichaIng
left a comment
There was a problem hiding this comment.
It does not hurt, but most likely won't help either, see: #2755 (comment)
Signed-off-by: Simon L <[email protected]>
fc811ba to
a984d9e
Compare
| @@ -91,11 +91,12 @@ RUN set -ex; \ | |||
| # set recommended PHP.ini settings | |||
| # see https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/server_tuning.html#enable-php-opcache | |||
There was a problem hiding this comment.
The documentation still recommends opcache.jit_buffer_size = 128M. Which one is the source of truth?
There was a problem hiding this comment.
The documentation is wrong at this point. Not sure about early PHP 8.0 versions, but all 8.1/8.2/8.3 versions do not use more than a little above 1 MiB of this buffer (with one NC instance), and since OPcache size overall is 128 MiB, using 128 MiB for JIT alone cannot work.
It should be also noted that JIT in general works on x86 only, not on ARM.
There was a problem hiding this comment.
could the documentation then be updated please?
|
@szaimen Of course a warning was thrown when 128 MiB JIT use up all of the 128 MiB of the overall OPcache alone (reserving it like interned strings buffer does), and I guess reducing it to 8 MiB alone solved the issue, while the OPcache size can remain at its default 128 MiB then (and interned strings buffer at 32). The regular OPcache does not occupy the system memory, unless it is really used by cached scripts, but the as well raised interned strings buffer does, regardless whether it is really used or not. So at least 32 MiB system memory could be freed presumably without any downside. EDIT: Oh, I recommended it myself, as JIT raises overall OPcache as well, according to my tests linked above 😅. |
Address #2755
and #2795