Date: Thu, 21 Jul 2016 15:31:46 -0400 From: Andrew Gallatin <gallatin@cs.duke.edu> To: Adrian Chadd <adrian@freebsd.org>, FreeBSD Net <freebsd-net@freebsd.org> Subject: Re: proposal: splitting NIC RSS up from stack RSS Message-ID: <306af514-70ff-f3bf-5b4f-da7ac1ec6580@cs.duke.edu> In-Reply-To: <CAJ-Vmo=Wj3ZuC6mnVCxonQ74nfEmH7CE=TP3xhLzWifdBxxfBQ@mail.gmail.com> References: <CAJ-Vmo=Wj3ZuC6mnVCxonQ74nfEmH7CE=TP3xhLzWifdBxxfBQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 07/14/2016 16:06, Adrian Chadd wrote: > I'd appreciate any other feedback/comments/suggestions. If you're > using RSS and you haven't told me then please let me know! Hi Adrian, I'm a huge fan of your RSS work. In fact, I did a backport of RSS to Netflix's stable-10 about 6 months ago. I was really interesting in breaking up the global network hashtables, where we see a lot of contention. PCBGROUP didn't help much (just spread contention around), so I was hoping that RSS would be the magic bullet. Things may have progressed since then, but the real deficiencies that I saw were: o RSS (at the time) would only use a power-of-two number of cores. Sadly, Intel and AMD are building lots of chips with oddball core counts. So in a workload like ours where most work is initiated via the NIC rx ithread, having a 14-core machine meant leaving almost 1/2 the machine mostly idle, while 8 cores were maxed out. o There is (or was at the time) no library interface for RSS, and no patches for popular web servers (like nginx) to use RSS. The only example RSS users I could find were a few things from your blog. These 2 things lead me to abandon the backport, as I didn't have time to address them on top of other work I was doing. I especially think getting a real API and a real example consumer would help a lot. Best regards, Drew
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?306af514-70ff-f3bf-5b4f-da7ac1ec6580>