473,404 Members | 2,213 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,404 software developers and data experts.

Shared vs Static Performance

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".

Apr 18 '06 #1
2 2428
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

Apr 18 '06 #2
NC
to*******@gmail.com 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.


Yahoo! is not a typical PHP installation -- they run FreeBSD, a tweaked
Apache, and their PHP is configured as a FastCGI executable... This is
very different from your average PHP installation...

Cheers,
NC

Apr 19 '06 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

7
by: Christos TZOTZIOY Georgiou | last post by:
Last night I was compiling the latest python snapshot at my home Linux system (a K6-III @420 --the extra 20 Hz is overclocking :); then I tried building a shared version of the interpreter. I did...
96
by: BadPony | last post by:
Anyone using Peoplesoft on a Federated UDB (shared nothing)Environment on Open System Platforms? Preferably AIX, but any war stories would be good. TEA EB-C
4
by: MPF | last post by:
When designing a n-tier architecture, what is the preferred method/function accessibility? <Specifically for asp.net apps> A private constructor and shared/static methods & functions? A public...
2
by: Paul Wu | last post by:
From what I understand, in ASP.NET, each HTTP requests is serviced by a separate thread. So if my code uses a static Class with shared members and properties, I can manage concurrent access by using...
4
by: John Kraft | last post by:
Hi all, My question is more of a phylisophical one here, but I am wondering what the difference is (effectively and performance wise) between using a shared variable/static variable and using a...
0
by: domtam | last post by:
Hi everybody, As far as I understand, each worker process in a web garden (say, in IIS 6.0) has its own copy of Cache objects, static objects and Application(state) objects. In other words, they...
15
by: Rob Nicholson | last post by:
A consequence of the ASP.NET architecture on IIS has just hit home with a big thud. It's to do with shared variables. Consider a module like this: Public Module Functions Public GlobalName As...
5
by: Simon | last post by:
Hi all, We have an ASP.NET 1.1 application running on IIS6 on Server 2003. Most of the base objects we are using in this application are taken from a windows application also written by us. We...
2
by: Random | last post by:
Here's a design question I'm curious to know if anyone here has wrestled with before... I'm writing my data access methods in classes in the App_Code directory. I know that I can easily...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.