Thanks for benchmarks. This time I didn't see so good results myself :)
I actually, started this work with performance in mind, but after
understanding all existing incosistencies, think that consistency is more
important.

Thanks. Dmitry.
On Jan 31, 2015 11:18 AM, "Rasmus Lerdorf" <ras...@lerdorf.com> wrote:

> On 01/30/2015 09:10 PM, Dmitry Stogov wrote:
> > Hi,
> >
> > Nikita got an idea about stopping changing of array/object internal
> > pointers even in forech by reference.
> > I've added an additional RFC section:
> >
> > https://wiki.php.net/rfc/php7_foreach#additional_behavoir_change
> >
> > Trivial implementation on top of the main patch:
> >
> > https://gist.github.com/dstogov/63b269207ba0aed8b776
> >
> > and an additional proposed voting question.
> >
> > Also, the implementation now must be almost complete.
>
> I built your branch and applied Nikita's patch as well and ran it
> through my benchmark box here. Before -> After numbers in requests/sec:
>
> Drupal8-b4        182 ->  184
> Wordpress-4.1     661 ->  675
> phpbb-3.1.2      1071 -> 1084
> Mediawiki-1.24.1  304 ->  306
> Opencart-2.0.1.1  458 ->  459
> WardrobeCMS-1.2.0 993 ->  999
> Geeklog-2.1.0     823 ->  825
> Traq-3.5.2       1869 -> 1902
>
> So about a 1% boost across the board except for Opencart, but it spends
> most of its time creating sessions on disk and writing to MySQL.
>
> No obvious visible things broke in any of these. Overall, even without
> the performance boost, I think making the edge-case foreach behaviour
> consistent and predictable is a good thing on its own.
>
> -Rasmus
>
>

Reply via email to