Re: Reporting bugs for phpng
| From: | Pascal Chevrel | Date: | Thu, 31 Jul 2014 16:34:31 +0000 |
| Subject: | Re: Reporting bugs for phpng | ||
| References: | 1 2 3 4 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-76292@lists.php.net to get a copy of this message | ||
Le 31/07/2014 16:23, Laruence a écrit :
Hey: On Thu, Jul 31, 2014 at 8:29 PM, Pascal Chevrel <pascal.chevrel@free.fr> wrote:Hi, The problem is that the more arrays I load, the more memory PHPNG consumes while current versions of PHP have that value mostly stable. I have with PHPNG a scalability issue I don't have with regular PHP. If tomorrow I increase the number of languages I support in my app from 70 to 200 (which is my long term goal btw), I would probably need to set memory_limit to 700MB which seems honestly crazy when PHP 5.x needs 8MB for the same script to run at the same speed. As an end user, I think it's a bug not a feature, I hope you understand my point of view :). Also, people on shared hosting can't change the memory_limit value, it doesn't sound like a change that is good for PHP in shared hosting environment which is a large part of PHP success. You mention that it is beneficial when OPCache is activated, but it isn't activated by default, so the theoretical gain would only work for people that can activate it, right? Or does it mean that OPCache would be activated by default in PHP 7? Is there no way to release the memory programmatically before the request ends? Shouldn't explicitely using unset() on the array at the end of each iteration indicate to the engine that I don't just want to destroy the array reference but also get the memory back? That sounds like a very significant change in how PHP behaves today with arrays, doesn't it? PHPNG is promoted as a big speed optimization that wouldn't impact userland code, well, in my case it does and very significantly if parts of my app crash or use 20 or 30 times more memory than before for a 5% speed gain, it's not a win. If there is a way to force PHP to unload that data from memory and basically behave like PHP 5.x it could at least be in PHP 7 upgrade release notes for people like me that build stuff on today's PHP strengths. Thanks, PascalLe 26/07/2014 04:42, Laruence a écrit :I am afraid this is not a bug. it's due to our new immutable array implementation. all these langs map array are constant array, such it will be treat as immutable array, which means it will not be released untill the request shutdown. (which will bring significant performance improvement for saving array construct/destruct while use with opcache) I suggest you to increase the memory_limit as a workaround .. Anyway, Dmitry, what do you think? maybe something like interned_string_size?Hey: On Fri, Jul 25, 2014 at 9:14 PM, Pascal Chevrel <pascal.chevrel@free.fr> wrote:Hi, I opened this bug: https://bugs.php.net/bug.php?id=67725 I put a testcase triggering the memory leak in a github repo referenced in the bug.Hi, I tried the .deb package for phpng that Zend provides since yesterday (thanks for that!) and I hit a memory consumption issue with the first of my scripts I tried: PHPNG: Memory peak: 62914560 (55.97MB) Elapsed time (s): 0.3383 PHP 5.5: Memory peak: 1835008 (1.64MB) Elapsed time (s): 0.0717 How/where can I make a bug report about it? Is https://bugs.php.net/ ok for PHPNG bugs?PHPNG is not listed in bugs.php.net yet. but as it's a branch of PHP , I think it's okey to report it there, and note it's PHPNG in the comment. for now. thanks