On 17/06/2015 14:18, "Traynor, Kevin" <kevin.tray...@intel.com> wrote:

>
>> -----Original Message-----
>> From: Traynor, Kevin
>> Sent: Wednesday, June 17, 2015 10:12 AM
>> To: Flavio Leitner; Daniele Di Proietto
>> Cc: dev@openvswitch.org; Gray, Mark D
>> Subject: RE: [ovs-dev] Is this an issue for DPDK vhost rss?
>> 
>> 
>> > -----Original Message-----
>> > From: Flavio Leitner [mailto:f...@sysclose.org]
>> > Sent: Tuesday, June 16, 2015 6:28 PM
>> > To: Daniele Di Proietto
>> > Cc: Traynor, Kevin; dev@openvswitch.org; Gray, Mark D
>> > Subject: Re: [ovs-dev] Is this an issue for DPDK vhost rss?
>> >
>> > 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.
>> 
>> I tested with a subset of the patches and the ol_flags.rss bit is being
>>set
>> correctly.
>> 
>> It could be merged and available in DPDK 2.1 with a config parameter.
>> However,
>> even with this we'd need to assess the rest of the changes and
>>compatibility
>> with OVS.
>> 
>> >
>> > 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.
>> 
>> That would be ideal.
>> 
>> >
>> >
>> > > >> > 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.
>
>I'm also seeing a ~3 mpps drop in phy2phy when not using the hardware
>hash.
>It's a ~25% drop on phy2phy vs. a ~2.5% drop on the vhost interface with
>the
>hash reset workaround. There may not be a DPDK fix that we can incorporate
>until towards the end of the year (DPDK 2.2?) so IMHO, with this size of
>performance drop it would be better to use the workaround until there's a
>DPDK fix. 

I agree that from a performance perspective it would be better.

The only problem I have with this approach is the following:  does it make
sense
to read the RSS value even if the PKT_RSS_HASH flag is not set?  Is it
safe to
assume that the NICs are returning appropriate values for IP TCP and UDP
packets
all the time?

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to