Re: linux 2.2.19pre and thttpd (VM-global problem?)

From: Jakob Østergaard (jakob@unthought.net)
Date: Fri Dec 29 2000 - 13:13:28 EST


On Fri, Dec 29, 2000 at 08:04:21PM +0200, Petru Paler wrote:
> On Fri, Dec 29, 2000 at 04:53:40PM +0100, Andrea Arcangeli wrote:
> > On Fri, Dec 29, 2000 at 09:38:40AM +0200, Petru Paler wrote:
> > > This is one of the main thttpd design points: run in a select() loop. Since
> > > it is intended for mainly static workloads, it performs quite well...
> >
> > It can't scale in SMP.
>
> No one said it does, but it works nicely on UP.

What ?

The TCP stack is threaded, so things like checksum calculation will
take advantage of multiple processors - right ?

Thes rest of the work is roughly copying data that isn't already
cached from the disk into memory. Well, you have one disk so threads
will buy you zero there.

Unless you do blocking I/O on the files or on the sockets, I fail to
see how threads could possibly boost the performance on a web server
that serves *static*only* pages.

99% of the real work is done by the kernel, so whether you have your
user-space application threaded or not should not be an issue - the
way that I see it...

Andrea, or someone else, would you care to enlighten me on that ?

(The reason I'm curious is because I'm about a month away from implementing
 something that would run high-bandwidth TCP transfers and I'm planning
 on keeping it single-threaded - unless someone can tell me that's a bad
 idea)

Thanks,

-- 
................................................................
:   jakob@unthought.net   : And I see the elder races,         :
:.........................: putrid forms of man                :
:   Jakob Østergaard      : See him rise and claim the earth,  :
:        OZ9ABN           : his downfall is at hand.           :
:.........................:............{Konkhra}...............:
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Dec 31 2000 - 21:00:12 EST