[ovs-dev] [PATCH 0/3] Output packet batching.

Ilya Maximets i.maximets at samsung.com
Tue Jul 4 13:10:14 UTC 2017


Hi Eelco,

Thanks for paying attention to this. I'll be appreciated if you'll
test/review the solution when 'implementation level' discussion
finished.

Best regards, Ilya Maximets.

On 04.07.2017 12:27, Eelco Chaudron wrote:
> Hi Ilya/Bhanu,
> 
> I see you guys started a discussion already, so just some input form my side...
> 
> When I started looking into this, my hack looked very much like Ilya's, and I
> was flushing my tx queue every rx batch.I even kept track of which port had
> packets waiting to send, so I did not have to loop trough all PMD ports (but
> I guess in most scenarios the number of ports are small).
> 
> I did not fully reviewed and/or tested this patchset, but I like the simplicity
> of doing this on the dpif layer, vs a per netdev device implementation.
> 
> If there is some form of consenses at which layer it should be implemented I
> can review and test the appropriate patchset (this one, or Bhanu's v3).
> 
> Cheers,
> 
> Eelco
> 
> 
> On 30/06/17 14:02, Ilya Maximets wrote:
>> This patch-set inspired by [1] from Bhanuprakash Bodireddy.
>> Implementation of [1] looks very complex and introduces many pitfalls for
>> later code modifications like possible packet stucks.
>>
>> This version targeted to make simple and flexible output packet batching on
>> higher level without introducing and even simplifying netdev layer.
>>
>> Patch set consists of 3 patches. All the functionality introduced in the
>> first patch. Two others are just cleanups of netdevs to not do unnecessary
>> things.
>>
>> Basic testing of 'PVP with OVS bonding on phy ports' scenario shows
>> significant performance improvement.
>> More accurate and intensive testing required.
>>
>> [1] [PATCH 0/6] netdev-dpdk: Use intermediate queue during packet transmission.
>>      https://mail.openvswitch.org/pipermail/ovs-dev/2017-June/334762.html
>>
>> Ilya Maximets (3):
>>    dpif-netdev: Output packet batching.
>>    netdev: Remove unused may_steal.
>>    netdev: Remove useless cutlen.
>>
>>   lib/dpif-netdev.c     | 81 ++++++++++++++++++++++++++++++++++++---------------
>>   lib/netdev-bsd.c      |  7 ++---
>>   lib/netdev-dpdk.c     | 30 +++++++------------
>>   lib/netdev-dummy.c    |  6 ++--
>>   lib/netdev-linux.c    |  7 ++---
>>   lib/netdev-provider.h |  7 ++---
>>   lib/netdev.c          | 12 +++-----
>>   lib/netdev.h          |  2 +-
>>   8 files changed, 83 insertions(+), 69 deletions(-)
>>
> 
> 
> 
> 


More information about the dev mailing list