> The syscall overhead is peanuts. It's more like 10 000 times faster
> than a disc seek. The syscall overhead is simply not worth
> considering.
It's 10k times faster sure if you *have to go to disk*. What happens when
I build a 512Mb web server with only 256Mb of active content? Suddenly
I'm paying for per-request syscalls I don't need. I know, it's all about
trade-offs :)
I could show you a beautiful trace of apache 1.3 hacked up a bit in which
it served 75 requests in something like 20 system calls. This means there
are no per-request syscalls required currently... There's a few
connection setup and teardown calls, and the rest were writev()s or
write()s -- the client was http/1.1 pipelining, so I'm "cheating"... but
pipelining clients are here already and 6 months to a year from now they
should be common.
The reason I started this thread is that I've got a 128Mb server with
about 150Mb of active data... so on it yup extra syscalls would be no
problem at all. As an application programmer though, I'm not sure how I
can discern the two cases efficiently.
Incidentally, benchmarks, and most high volume sites I've dealt with fall
into the first category -- working sets are smaller than RAM. I'd crank
up the memory on my 128Mb box... except it's a Tyan Tomcat III and it's
snobbish about the RAM it will talk with.
Dean
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu