Hi Dmitry,

On Fri, Sep 11, 2015 at 01:58:42PM +0300, Dmitry Sivachenko wrote:
> For reference: I tracked this down to be FreeBSD-specific problem:
> https://lists.freebsd.org/pipermail/freebsd-net/2015-September/043314.html
> 
> Thanks all for your help.

Thanks for the update. What I'm seeing in your description looks
very much like equivalent issues we used to face with softirq on
Linux, so it's possible that you're in the worst case where work
cannot be aggregated but comes with a huge overhead. Also maybe
you have pf or something like this eating some extra CPU. I can't
be specific, I don't use FreeBSD myself, but like Linux it's a
modern and performant OS so I think you'll come to a solution.

I don't know if you can pin processes to CPUs but there could be
interesting tests to run regarding how processes and interrupts
are pinned.

Also if your NIC supports multiple queues, you'll need to check
how interrupts are delivered. It would be possible that you're
facing a scalability issue in the network driver or stack, maybe
just in case where too few sockets are used or when packets get
highly reordered.

Cheers,
Willy


Reply via email to