Hi,
Attached is a patch to optimize variable fetches (basically it caches the
fetches so that variables aren't re-fetched every time, most noticeable in
loops with the loop control counter but also it's a general improvement).
It's similar to the patch Sterling and Thies did a year ago in their
optimization patch.
As compiling the zend_execute.c file is starting to take a long time
(minutes) due to inlining with the goto VM architecture, I suggest to apply
Zend.m4 to make the default the function handler paradigm. The performance
difference is not big and it'll make it easier to work on PHP. For
production environments one can use a configure switch to turn this on.
I'd
be happy to hear of benchmarks.
In general, there might be problems with extensions which access the active
symbol table directly. It's something I still need to look into so please
report any problems.
Please try and take some time to test it.
Andi