Re: [PATCH v5 0/2] skb_array: array based FIFO for skbs

From: Jason Wang
Date: Mon May 30 2016 - 22:29:34 EST




On 2016å05æ30æ 23:37, Michael S. Tsirkin wrote:
On Mon, May 30, 2016 at 05:59:33PM +0800, Jason Wang wrote:

On 2016å05æ23æ 18:43, Michael S. Tsirkin wrote:
This is in response to the proposal by Jason to make tun
rx packet queue lockless using a circular buffer.
My testing seems to show that at least for the common usecase
in networking, which isn't lockless, circular buffer
with indices does not perform that well, because
each index access causes a cache line to bounce between
CPUs, and index access causes stalls due to the dependency.
I change tun to use skb array, looks like it can give about 5% more faster
than skb ring.
OK and skb ring is 9% faster than the linked list, so together
this is a 14% speedup?

Right.


And we usually don't need touch bhs during consume and produce (e.g for the
case of tun).

Thanks
Maybe I'll drop it in v6 then ...
Could you post the full tun patchset please?


Since it needs no bh versions of produce/consume, maybe you can post v6 first, then I can post the tun patches?