[ovs-dev] [PATCH v2] tunneling: Improving tunneling performance using DPDK Rx checksum offloading feature.

Jesse Gross jesse at kernel.org
Fri May 6 15:59:50 UTC 2016


On Fri, May 6, 2016 at 1:13 AM, Chandran, Sugesh
<sugesh.chandran at intel.com> wrote:
>> -----Original Message-----
>> From: Jesse Gross [mailto:jesse at kernel.org]
>> Sent: Friday, May 6, 2016 1:58 AM
>> To: Chandran, Sugesh <sugesh.chandran at intel.com>
>> Cc: pravin shelar <pshelar at ovn.org>; ovs dev <dev at openvswitch.org>
>> Subject: Re: [ovs-dev] [PATCH v2] tunneling: Improving tunneling
>> performance using DPDK Rx checksum offloading feature.
>>
>> On Thu, May 5, 2016 at 1:26 AM, Chandran, Sugesh
>> <sugesh.chandran at intel.com> wrote:
>> >> -----Original Message-----
>> >> From: Jesse Gross [mailto:jesse at kernel.org]
>> >> Sent: Wednesday, May 4, 2016 10:06 PM
>> >> To: Chandran, Sugesh <sugesh.chandran at intel.com>
>> >> Cc: pravin shelar <pshelar at ovn.org>; ovs dev <dev at openvswitch.org>
>> >> Subject: Re: [ovs-dev] [PATCH v2] tunneling: Improving tunneling
>> >> performance using DPDK Rx checksum offloading feature.
>> >>
>> >> On Wed, May 4, 2016 at 8:58 AM, Chandran, Sugesh
>> >> <sugesh.chandran at intel.com> wrote:
>> >> >> -----Original Message-----
>> >> >> From: Jesse Gross [mailto:jesse at kernel.org]
>> >> >> Sent: Thursday, April 28, 2016 4:41 PM
>> >> >> To: Chandran, Sugesh <sugesh.chandran at intel.com>
>> >> >> Cc: pravin shelar <pshelar at ovn.org>; ovs dev
>> <dev at openvswitch.org>
>> >> >> Subject: Re: [ovs-dev] [PATCH v2] tunneling: Improving tunneling
>> >> >> performance using DPDK Rx checksum offloading feature.
>> >> >
>> >> >> That sounds great, thanks for following up. In the meantime, do
>> >> >> you have any plans for transmit side checksum offloading?
>> >> > [Sugesh] The vectorization on Tx side is getting disabled when DPDK
>> >> > Tx
>> >> checksum offload is enabled. This causes performance drop in OVS.
>> >> > However We don’t find any such impact when enabling Rx checksum
>> >> offloading(though this disables Rx vectorization).
>> >>
>> >> OK, I see. Does the drop in throughput cause performance to go below
>> >> the baseline even for UDP tunnels with checksum traffic? (I guess
>> >> small and large packets might have different results here.) Or is it
>> >> that it reduce performance for unrelated traffic? If it's the latter
>> >> case, can we find a way to use offloading conditionally?
>> > [Sugesh] We tested for 64 byte UDP packet stream and found that the
>> > performance is better when the offloading is turned off. This is for any
>> traffic through the port.
>> > DPDK doesn’t support conditional offloading for now.
>> > In other words DPDK can't do selective vector packet processing on a port.
>> > As far as I know there are some technical difficulties to enable
>> > offload + vectorization together in DPDK.
>>
>> My guess is the results might be different for larger packets since those cases
>> will stress checksumming more and rx/tx routines less.
>>
>> In any case, I think this is an area that is worthwhile to continue investigating.
>> My expectation is that tunneled packets with outer UDP checksums will be a
>> use case that is hit increasingly frequently with OVS DPDK - for example, OVN
>> will likely start exercising this soon.
> [Sugesh]Totally agreed, I will do PHY-PHY, PHY-TUNNEL-PHY tests with different size traffic
> streams(64 Byte, 512, 1024, 1500) when checksum enabled/disabled and see the impact.
> Is there any other traffic pattern/tests that we have to consider?

I think that should cover it pretty well. Thanks a lot!



More information about the dev mailing list