proposal: splitting NIC RSS up from stack RSS
Andrew Gallatin
gallatin at cs.duke.edu
Thu Jul 21 19:39:41 UTC 2016
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
More information about the freebsd-net
mailing list