Re: [RFC] Native TLS for globals in ZTS
| From: | Arnaud Le Blanc | Date: | Tue, 26 Aug 2008 14:14:12 +0000 |
| Subject: | Re: [RFC] Native TLS for globals in ZTS | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-40093@lists.php.net to get a copy of this message | ||
Hi,
I updated the RFC.
I added benchmark tests on x86_64: Position independent code is the default
there and is as fast as non-PIC on IA-32. The initial patch using dynamic TLS
gives the same results as on IA-32 with static TLS.
I also tested the patch (with a few changes) on Windows Server 2008 with IIS
(older Windows cannot use TLS in LoadLibrary()-loaded DLLs). This works as
expected, but there are still some restrictions.
Regards,
Arnaud
On Sunday 24 August 2008 18:37:09 Arnaud Le Blanc wrote:
> Hi,
>
> I have written a RFC about my patch at
> http://wiki.php.net/rfc/tls
>
> The goal of this patch is to reduce the performance overhead of ZTS builds.
>
> Since the initial patch I made more research on various implementations of
> TLS: Linux, FreeBSD, Solaris, Windows. Based on what I found I wrote a new
> patch to avoid the problems of the initial one and the results on bench.php
> are as follows:
>
>
> non-ZTS
> 3.7s
>
>
> ZTS unpatched
> 5.2s
>
>
> ZTS-patched, native TLS disabled
> 5.0s
>
>
> ZTS-patched, native TLS enabled
> 4.2s
>
>
> Regards,
>
> Arnaud
>