Hi Pierre,

On 05/20/2011 01:49 PM, Pierre Joye wrote:
hi Dmitry,

Nice improvements, thanks :)

Any reason not to have done the changes for windows as well?

Sorry, I'm not an expert in MS VC inline assembler.
As I remember in VC6 it was poor and didn't allow complicated things.
In case someone can add support for VC it would be great.

What's about putting the asm code in external file so it can used by
more compilers? (some has issues with inline asm, like VC in x64 mode,
other may have as well afair).

The main idea of the patch is inlining and I don't know how can I inline from external file.

In simple cases the function call, parameter passing, prologue, epilogue make more overhead than the opration itself. So the inlining is responsable for 90% of speedup while asm optimization only for 10%.

Thanks. Dmitry.


Cheers,

On Fri, May 20, 2011 at 11:28 AM, Dmitry Stogov<dmi...@zend.com>  wrote:
Hi,

The attached patch improves speed of numeric operations by inlining the most
probable paths directy into executor. It also optimizes some operations for
x86 CPU using assembler.

The bench.php gets more than 10% speedup (2.5 sec instead of 2.9 sec)
Real-life applications are not affected. All the PHPT tests are passed.

I'm going to commit the patch on next week if no objections.
Any related ideas are welcome.

Thanks. Dmitry.

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php






--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to