|
Posted by Andy Jeffries on 11/19/19 11:45
On Tue, 18 Apr 2006 14:55:41 -0700, tomdean20 wrote:
> Does anyone have a general idea of the difference in performance when
> compiling PHP with primarily shared extensions rather than static? A
> recent Yahoo presentation "PHP at Yahoo" highlighted that they built PHP
> with the "disable-all" option, which implies that they load all of their
> extensions dynamically.
>
> I'd be curious if anyone has any experience in the performance difference
> bewteen the two, i.e. 5% performance loss, not just "it's only a little
> bit slower".
To be honest I think it'd make pretty much sod-all difference either way,
at least on a Linux platform. Linux process forking using a Copy-on-write
memory model, so creating a new apache/PHP process for a new connection
(the only time dynamic linking to a shared extension would happen unless
you literally load them in the script) is as lightweight either way as the
entire processes memory is referenced twice and new memory only allocated
if pages change.
I'm sure Yahoo has found a slight increase in performance (or some other
reason) or they'd do it the other way round, but I'd be surprised if
performance difference was significant (of course, for a single option
change during compile time it's worth doing even if relatively minor).
Sorry to not give you a definitive answer, but I just thought I'd pipe up
with that (in case anyone reading the thread doesn't know about Linux
process forking).
Cheers,
Andy
--
Andy Jeffries MBCS CITP ZCE | gPHPEdit Lead Developer
http://www.gphpedit.org | PHP editor for Gnome 2
http://www.andyjeffries.co.uk | Personal site and photos
[Back to original message]
|