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(-) >> > > > > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev