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>