Date: Thu, 4 Aug 2016 11:40:10 +0200 From: Ben RUBSON <ben.rubson@gmail.com> To: freebsd-net@freebsd.org Subject: Re: Unstable local network throughput Message-ID: <5D6DF8EA-D9AA-4617-8561-2D7E22A738C3@gmail.com> In-Reply-To: <3B164B7B-CBFB-4518-B57D-A96EABB71647@gmail.com> References: <3C0D892F-2BE8-4650-B9FC-93C8EE0443E1@gmail.com> <bed13ae3-0b8f-b1af-7418-7bf1b9fc74bc@selasky.org> <3B164B7B-CBFB-4518-B57D-A96EABB71647@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> On 02 Aug 2016, at 22:11, Ben RUBSON <ben.rubson@gmail.com> wrote: >=20 >> On 02 Aug 2016, at 21:35, Hans Petter Selasky <hps@selasky.org> = wrote: >>=20 >> The CX-3 driver doesn't bind the worker threads to specific CPU cores = by default, so if your CPU has more than one so-called numa, you'll end = up that the bottle-neck is the high-speed link between the CPU cores and = not the card. A quick and dirty workaround is to "cpuset" iperf and the = interrupt and taskqueue threads to specific CPU cores. >=20 > My CPUs : 2x E5-2620v3 with DDR4@1866. OK, so I cpuset all Mellanox interrupts to one NUMA, as well as the = iPerf processes, and I'm able to reach max bandwidth. Choosing the wrong NUMA (or both, or one for interrupts, the other one = for iPerf, etc...) totally kills throughput. However, full-duplex throughput is still limited, I can't manage to = reach 2x40Gb/s, throttle is at about 45Gb/s. I tried many different cpuset layouts, but I never went above 45Gb/s. (Linux allowed me to reach 2x40Gb/s so hardware is not a bottleneck) >> Are you using "options RSS" and "options PCBGROUP" in your kernel = config? I will then give RSS a try. Any other clue perhaps regarding the full-duplex limitation ? Many thanks ! Ben
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5D6DF8EA-D9AA-4617-8561-2D7E22A738C3>