On Mon, Jun 15, 2015 at 05:55:13PM +0000, Daniele Di Proietto wrote: > On 15/06/2015 12:16, "Traynor, Kevin" <kevin.tray...@intel.com> wrote: > >There is a dpdk patchset that contains a potential fix for this and lots > >of > >other changes, but I haven't tested yet. > >https://urldefense.proofpoint.com/v2/url?u=http-3A__dpdk.org_ml_archives_d > >ev_2015-2DJune_018436.html&d=BQIFAg&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMN > >tXt-uEs&r=SmB5nZacmXNq0gKCC1s_Cw5yUNjxgD4v5kJqZ2uWLlE&m=FDVPKa2SqwpyYOTmA2 > >zGdscCPa1FVdQG3Zbr4tHrp38&s=fjg7wArWvYLJlgEGKijK6W6ECAxGk660UrPF3rAr4Rs&e=
I skimmed over the patchset and it is an ABI breaker, so I think the policy demands to announce it on 2.1 and merge only in 2.2 release. Maybe it is possible to separate the ol_flags fix into a smaller and simple patch to be accepted as bugfix yet in 2.1. > >> > Otherwise, should we avoid using the vectorized version? > >> > >> that's debatable - from a performance view it may be better to leave it > >>in > >> and take the hit elsewhere for the time being if there's a possibility > >>that > >> it will be changed in DPDK later. > > > >With a loop to reset the rss after the rte_vhost_dequeue_burst() call I'm > >seeing a drop of ~100kpps in vhost performance. Rx vectoristion gives a > >gain > >of about ~1 mpps on my system for the phy2phy cases. > > > >Using the ol_flags check is the right option when DPDK supports setting it > >correctly with rx vectorisation. In the meantime there's choice of using > >the > >reset loop or removing rx vectorisation - what do you think? > > Thanks for sharing these results. I've observed that if OVS can't use the > RSS > hash and has to compute we lose ~2Mpps on a single flow phy2phy test. > > Despite this, I still think we should consider the ol_flags because: > > * DPDK drivers (other than ixgbe) should use ol_flags as well to mark the > RSS hash as valid > * ixgbe_recv_pkts_vec() will report PKT_RX_RSS_HASH in future releases (the > patch you sent will be effective since DPDK 2.2, right?) I agree with the above. > If the throughput with the non-vector rx routine is higher we can disable > the vector rx as a temporary workaround. Could you point me to the vector and non-vector rx routines? I feel like I am missing something. Thanks, fbl _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev