Date: Sun, 12 Jul 2009 13:38:29 -0400 From: Scott Ullrich <sullrich@gmail.com> To: Kip Macy <kmacy@freebsd.org> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: Flowtables -- any tuning hints? Message-ID: <d5992baf0907121038n5b6d61fia8c53fc5fca55abf@mail.gmail.com> In-Reply-To: <3c1674c90907120009o330da19ds68c45d0dab6ef81f@mail.gmail.com> References: <d5992baf0907111024g5e3dddfvdd44a8795543e7a6@mail.gmail.com> <3c1674c90907120009o330da19ds68c45d0dab6ef81f@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Jul 12, 2009 at 3:09 AM, Kip Macy<kmacy@freebsd.org> wrote: > You want to avoid hash collisions. So, generally speaking you want the > hash table to be sized 2x larger than the number of unique connection > destinations. =A0You want the maximum number of flows to be as large as > the maximum number of unique destinations x number of cores. When you > get to the case of hundreds of thousands of unique destinations as in > the case of a small ISP doing IP forwarding, you're probably better > off disabling the flowtable. For most other workloads its likely to be > a clear win. Running a process on an 8-core system with 8 threads each > calling sendto(...) with 10 bytes I can push 3.5 - 4Mpps (with cxgb - > you won't get this with most cards) with the flowtable enabled. With > the flowtable disabled lock contention causes performance to degrade > to 330kpps with the aforementioned workload. > > Let me know if you have any issues. Thank you Kip, this sounds like a great addition to FreeBSD. Scott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d5992baf0907121038n5b6d61fia8c53fc5fca55abf>