Skip site navigation (1)Skip section navigation (2)
Date:      Fri,  8 Oct 1999 17:45:43 -0400 (EDT)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        Mohit Aron <aron@cs.rice.edu>
Cc:        wollman@khavrinen.lcs.mit.edu (Garrett Wollman), freebsd-net@FreeBSD.ORG
Subject:   Re: sbappend() is not scalable
Message-ID:  <14334.25691.85379.323929@grasshopper.cs.duke.edu>
In-Reply-To: <199910082133.QAA26223@cs.rice.edu>
References:  <199910082129.RAA67391@khavrinen.lcs.mit.edu> <199910082133.QAA26223@cs.rice.edu>

next in thread | previous in thread | raw e-mail | index | archive | help

Mohit Aron writes:
 > 
 > > 
 > > This is a well-known feature of the 4BSD socket layer.  The right fix
 > > is to get rid of the socket layer, but this requires a substantial
 > > effort that none of the people who know how to do it have been able to
 > > put in.
 > > 
 > 
 > 
 > It may not require such a massive effort. I fixed it for my experiments just
 > by maintaining an extra pointer to the tail of the list of mbufs. My solution
 > however isn't general enough in that I haven't patched other parts of the
 > socket/mbuf code to know about this pointer. However, I don't think it should
 > require overhauling the whole system.

For what it is worth, sbappend() is also responsible for a non-trivial
amount of cpu wastage when running TCP on low-latency, high-bandwidth
networks such gigabit ethernet & myrinet.  I don't have the exact data
in front of me, but I seem to remember that, next to bcopy &
in_cksumdata, it is the function where the most cpu is being spent
when transmitting at in the range of 500-1100Mb/s.  This is according
to iprobe on FreeBSD/alpha.

Drew

------------------------------------------------------------------------------
Andrew Gallatin, Sr Systems Programmer	http://www.cs.duke.edu/~gallatin
Duke University				Email: gallatin@cs.duke.edu
Department of Computer Science		Phone: (919) 660-6590






To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14334.25691.85379.323929>