• Tariq Toukan's avatar
    net/mlx5e: XDP, Support Enhanced Multi-Packet TX WQE · 5e0d2eef
    Tariq Toukan authored
    Add support for the HW feature of multi-packet WQE in XDP
    xmit flow.
    
    The conventional TX descriptor (WQE, Work Queue Element) serves
    a single packet. Our HW has support for multi-packet WQE (MPWQE)
    in which a single descriptor serves multiple TX packets.
    
    This reduces both the PCI overhead and the CPU cycles wasted on
    writing them.
    
    In this patch we add support for the HW feature, which is supported
    starting from ConnectX-5.
    
    Performance:
    Tested packet rate for UDP 64Byte multi-stream over ConnectX-5 NICs.
    CPU: Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
    
    XDP_TX:
    We see a huge gain on single port ConnectX-5, and reach the 100 Mpps
    milestone.
    * Single-port HCA:
    	Before:   70 Mpps
    	After:   100 Mpps (+42.8%)
    
    * Dual-port HCA:
    	Before: 51.7 Mpps
    	After:  57.3 Mpps (+10.8%)
    
    * In both cases we tested traffic on one port and for now On Dual-port HCAs
      we see only small gain, we are working to overcome this bottleneck, but
      for the moment only with experimental firmware on dual port HCAs we can
      reach the wanted numbers as seen on Single-port HCAs.
    
    XDP_REDIRECT:
    Redirect from (A) ConnectX-5 to (B) ConnectX-5.
    Due to a setup limitation, (A) and (B) are on different NUMA nodes,
    so absolute performance numbers are not optimal.
    Note:
      Below is the transmit rate of (B), not the redirect rate of (A)
      which is in some cases higher.
    
    * (B) is single-port:
    	Before:   77 Mpps
    	After:    90 Mpps (+16.8%)
    
    * (B) is dual-port:
    	Before:  61 Mpps
    	After:   72 Mpps (+18%)
    Signed-off-by: default avatarTariq Toukan <tariqt@mellanox.com>
    Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
    5e0d2eef
device.h 31.7 KB