Re: phpng: Refactored PHP Engine with Big Performance Improvement
| From: | Anatol Belski | Date: | Tue, 06 May 2014 09:41:14 +0000 |
| Subject: | Re: phpng: Refactored PHP Engine with Big Performance Improvement | ||
| References: | 1 2 3 4 5 6 7 8 9 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-73960@lists.php.net to get a copy of this message | ||
On Tue, May 6, 2014 10:34, Dmitry Stogov wrote:
> On Tue, May 6, 2014 at 12:21 PM, Anatol Belski
> <anatol.php@belski.net>wrote:
>
>
>> Hi Dmitry,
>>
>>
>> On Tue, May 6, 2014 09:31, Dmitry Stogov wrote:
>>
>>> Hi Anatol,
>>>
>>>
>>>
>>> i agree that coordination from beginning would make some thing
>>> easier, but I hardly believe we would able to do the PoC in short time
>>> with endless discussions.
>>>
>>> Lets take what we have now.
>>> I understand what you are not glad to do the same work once again.
>>> I make take some part of this work, if we come to agreement.
>>>
>>>
>> Yep, we have what we have now, so lets take it as the basis. I do not
>> shy to take that effort as well, not a question at all.
>>
>
> great!
>
>
>>
>>>
>>> According to performance, I wouldn't believe to anything except
>>> tests. and it's why I propose to start with the part that can't make
>>> any harm.
>>>
>> Yeah, there is almost no diff if you look here
>>
>>
>>
>> http://windows.php.net/downloads/snaps/ostc/pftt/perf/results-20140411-
>> masterr6c2f7bc-str_size_and_int64raa0c920.html (that's also linked from
>> the RFC). Many scripting languages do support that like python and ruby
>> and seem to have no harm. AFAIR Python even implements int64 on 32 bit
>> platforms. So IMHO it really makes sense too keep both as then we have a
>> balance between the functionality and performance, both will have a gain
>> and both can get further improvement in the future.
>>
>
> It's the reason why we are faster :)
>
>
> support for both int32 and int64 is going to be a big overhead even on
> 64-bit platforms. (I implemented and tested it about 8 years ago).
> Each math opcdoe (ZEND_ADD, ZEND_MUL etc) are going to be complicated
> finding the right operand types combination and overflow handling.
>
I wasn't suggesting to do that, especially not both 32 and 64 bit ints in
the same build :). Just to ilustrate how the equilibrium could be kept. As
you've seen, the discussion on the int64 RFC was started again. Lets see
how we can proceed further after it. And i'll be testing the phpng branch
the next days, too.
Cheers
Anatol