Re: [RFC] Zend Signal Handling
| From: | Arnaud Le Blanc | Date: | Thu, 14 Aug 2008 23:22:22 +0000 |
| Subject: | Re: [RFC] Zend Signal Handling | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-39971@lists.php.net to get a copy of this message | ||
On Thursday 14 August 2008 02:59:48 Arnaud Le Blanc wrote:
> Hi,
>
> I made some changes to the patch:
>
>
> http://arnaud.lb.s3.amazonaws.com/php-5.3.0-alarms-0808141122.patch
>
> - Apache effectively seems to resets the signals after MINIT, so original
> handlers are now saved in RINIT in the first request of the process.
> - Removed some unneeded blocks/unblocks.
> - Changed all added TSRMLS_FETCH() so that they affect only ZTS+ZEND_SIGNAL
> builds.
> - Removed some added TSRMLS_FETCH() (all in zend_alloc and a few in
> zend_hash).
>
> Regards,
>
> Arnaud
I made an other patch that caches tsrm_ls in a thread-local variable when
"calling" TSRMLS_FETCH(), on platforms that support the __thread specifier:
http://arnaud.lb.s3.amazonaws.com/tsrm_ls_cache.patch
This gives a 10 to 15% speedup to ZTS builds on bench.php. It also makes
ZEND_SIGNAL+ZTS builds run as fast as ZTS without ZEND_SIGNAL.
Regards,
Arnaud