httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dan Kegel <d...@alumni.caltech.edu>
Subject Re: Bad apache performance with linux-SMP
Date Wed, 19 May 1999 16:31:20 GMT
Juergen Schmidt wrote:
> 4 CPUs PII Xeon 450 MHz, 2 GByte RAM
> ... 2 x Intel EEpro 100 (only one is used...
> Linux 2.2.8 (SuSE 6.1., glibc based),  Apache 1.3.6
> Network: switched 100 MBit/s, half duplex
> [unneeded modules disabled, hostname lookups turned off...]
> 
> I'm measuring plain HTTP-GET on a static html-file with 8
> (Linux-)clients each running up to 64 processes (for a total of 512)
> doing HTTP-GET-requests in a tight loop. ... File size is 4KByte ...
>
> ... -- Linux with 4 CPUs is disastrous: It delivers significantly less RPS
> than the single-CPU version -- about a factor of 4 ! Only at high loads
> (256 procs und up) it catches up.

Dean Guadet replied:
> Upgrade to 2.2.9 or later, and do this when configuring apache: 
> env CFLAGS='-DSINGLE_LISTEN_UNSERIALIZED_ACCEPT' ./configure
> and ensure you only listen on one socket. 
> You shouldn't need to change NR_OPEN.
> I think 2.2.9 has the scheduler fixes.  Maybe not.

I don't think 2.2.9 has the wake-one fix, which might be very important.
One wake-one patch is at
ftp://e-mind.com/pub/andrea/kernel/2.2.8_andrea1.bz,
and another is in 2.3.3.
The wake-one patches only help accept(), so it's important to do as Dean
suggests, and make sure Apache sleeps in accept() rather than flock()
or something like that.

See http://www.kegel.com/mindcraft_redux.html for a list of the
issues found and addressed since Mindcraft's tests.  

Please keep us informed about your benchmark efforts.  I'm very
interested.

MfG
Dan

p.s.
Are all clients fetching the same file?  You didn't seem to specify.
Also, your graph needs better legends, IMHO.  I saw it before on the
web and didn't really grok it.

Mime
View raw message