Re: Overscheduling DOES happen with high web server load.

sjw44@eng.cam.ac.uk
Thu, 6 May 1999 13:23:29 +0100 (BST)


davem@redhat.com wrote:
>
[ .. stuff deleted... ]
>
> This smells of galloping herd phenomenon to me. And my nose says it's
> accept() in this case, and my nose further states that implementing
> wake-one semantics in accept() might even make this part of the
> profiling go away and increase our TCP server performance
> dramatically. Several people have suggested this to me in private
> discussions, and I was skeptical at first, but now I'm starting to
> believe it.
>

Hi,

Something that I'd spotted a while ago, and so far as I remember has not
yet been fixed, is the "extra socket creation" feature of accept(). This
too cannot help performance. I had an idea (which is on my "when 2.3.xx
comes out" list) to change the way accept() works at the socket layer by
implementing a protocol independent version of the tcp openreq scheme.
The basic idea was to have a queue on each socket of structures, one
per pending connection which can be managed with protocol independent
code.

I'd be interested to know who is considering the wake-one semantics since
it would seem an ideal thing to integrate with my accept() restructuring
idea,

Steve.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/