Re: Improved performance of array_maerge() and func_get_args()
| From: | Dmitry Stogov | Date: | Thu, 24 Oct 2013 06:36:35 +0000 |
| Subject: | Re: Improved performance of array_maerge() and func_get_args() | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-69826@lists.php.net to get a copy of this message | ||
On Thu, Oct 24, 2013 at 9:25 AM, Pierre Joye <pierre.php@gmail.com> wrote:
> hi,
>
> On Thu, Oct 24, 2013 at 2:17 AM, Christopher Jones
> <christopher.jones@oracle.com> wrote:
> >
> >
> > On 10/23/2013 05:36 AM, Dmitry Stogov wrote:
> >>
> >> Hi,
> >>
> >> I'm proposing two simple patches that eliminate a lot of useless zval
> >> copying.
> >> For example they remove only about 800 calls to zend_hash_copy() (25%)
> on
> >> each request to wordpress-3.6.0 home page and make it 2-4% faster.
> >>
> >> It's not a questions about master branch, but I think it is also safe to
> >> commit them into PHP-5.4 and PHP-5.5.
> >>
> >> Any objections?
> >>
> >> https://gist.github.com/dstogov/7117623
> >>
> >> https://gist.github.com/dstogov/7117649
> >>
> >> Thanks. Dmitry.
> >>
> >
> > I'd prefer PHP 5.4 was kept stable.
> >
> > Last time I suggested keeping PHP 5.4 stable [1], it wasn't, and the
> result
> > was
> > a performance regression [2].
>
> I tend to agree with Chris here, even for 5.5 :)
>
I don't care a lot about 5.4, but think it should be fixed in 5.5.
>
>
> However, Let me ask Matt to run our full tests suite against your
> patch, that may give us some numbers to discuss or confirm the safety
> of this patch.
>
Of course we checked patch with PHPT tests and some real-life apps, but in
case you have any other test suites it would be a great help to run them
too.
I would also look into strtr() implementation that became 6 times slower on
typical usage in comparison to 5.3 after its "improvement" :(
<?php
function foo() {
for ($i = 0; $i < 100000; $i++) {
strtr("abcdefgh", array("a"=>"11",
"g"=>"22"));
}
}
foo();
?>
Thanks. Dmitry.
>
> Matt? Can you run pftt, apps compat and perf tests using this patch pls?
>
> Cheers,
> --
> Pierre
>
> @pierrejoye | http://www.libgd.org
>