Skip to contentSkip to conversation

i40e driver has very bad performance when VXLAN TSO is enabled

dpdk-dev [email protected] 1 participant 2 messages May 28, 2020 – Jul 30, 2020

lore
Share & tools
lore
#0 lore raw

https://bugs.dpdk.org/show_bug.cgi?id=486

            Bug ID: 486
           Summary: i40e driver has very bad performance when VXLAN TSO is
                    enabled
           Product: DPDK
           Version: 19.11
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: critical
          Priority: Normal
         Component: ethdev
          Assignee: [email protected]
          Reporter: [email protected]

Target Milestone: ---

Current OVS DPDK (DPDK 19.11.x) has supported TSO on vlan, but TSO isn't enabled on vxlan.

DPDK and pmd drivers have been ready for VXLAN TSO support, I'm trying to enable it, the first patch [1] has been posted into ovs community, it can work in term of functionality, but performance is very bad, it is about 40Mbps on two network namespaces on my two servers, I used OVS DPDK in one server, the other server used OVS kernel, performance can reach about 110Mbps when I disabled GRO on physical interface and vxlan interface (sudo ethtool -K XXX gro off), it is about 2Gbps when I disabled tso and keep tx checksum offload on (sudo ip netns exec ns02 ethtool -K veth2 tso off).

I checked my code many times, I can't find out root cause, I doubt it is i40e driver issue (I'm very sure my X710 NIC can work well in OVS kernel and vxlan tso is enabled)

[1]
https://patchwork.ozlabs.org/project/openvswitch/patch/[email protected]/

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#1 lore raw

https://bugs.dpdk.org/show_bug.cgi?id=486

Xiaoyun Li ([email protected]) changed:

What |Removed |Added
----------------------------------------------------------------------------

                 CC|                            |[email protected]
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #2 from Xiaoyun Li ([email protected]) ---
Using testpmd to test vxlan tso. Function works. And after comparing the perf with cases without vxlan tso, the perf is similar. Can't see obvious drop.

Tested with both 19.11 & newest commit b8d81e9cbf5e. Both work fine. So it's not a bug of i40e driver.

Test steps:

ixia generates packets with len 1500, and udp dst port 4789 (vxlan), and outer udp payload with vxlan and inner tcp packets.

ixia rx port to observe the bytes receive rate. Both cases can get about 3GBps perf (using XXV710).

If using vxlan tso:

./build/app/dpdk-testpmd -l 28,29,30,31 -n 4 -w 86:00.0 -w 86:00.1 – -i

port stop all

csum set ip hw 0

csum set udp hw 0

csum set tcp hw 0

csum set outer-ip hw 0

csum set outer-udp hw 0

csum set sctp hw 0

csum parse-tunnel on 0

csum set ip hw 1

csum set udp hw 1

csum set tcp hw 1

csum set outer-ip hw 1

csum set outer-udp hw 1

csum set sctp hw 1

csum parse-tunnel on 1

tunnel_tso set 800 1

rx_vxlan_port add 4789 0

set fwd csum

port start all

start

If without vxlan tso:

./build/app/dpdk-testpmd -l 28,29,30,31 -n 4 -w 86:00.0 -w 86:00.1 – -i

rx_vxlan_port add 4789 0

start

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.