Merge branch 'mlx5-xdp-perf-optimizations'
authorDavid S. Miller <davem@davemloft.net>
Sat, 25 Mar 2017 02:11:47 +0000 (19:11 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sat, 25 Mar 2017 02:11:47 +0000 (19:11 -0700)
commitdcb421f4279f362c3eef7479616c76588b74d782
tree29fc3be423bf00394e76d8cee91a2ce01adfcea6
parent68e498554f598d8a6596c85bb661e9a68cafd673
parent3139104861d9a8fed13f813237cc998c8272eafc
Merge branch 'mlx5-xdp-perf-optimizations'

Saeed Mahameed says:

====================
Mellanox mlx5e XDP performance optimization

This series provides some preformancee optimizations for mlx5e
driver, especially for XDP TX flows.

1st patch is a simple change of rmb to dma_rmb in CQE fetch routine
which shows a huge gain for both RX and TX packet rates.

2nd patch removes write combining logic from the driver TX handler
and simplifies the TX logic while improving TX CPU utilization.

All other patches combined provide some refactoring to the driver TX
flows to allow some significant XDP TX improvements.

More details and performance numbers per patch can be found in each patch
commit message compared to the preceding patch.

Overall performance improvemnets
  System: Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz

Test case                   Baseline      Now      improvement
---------------------------------------------------------------
TX packets (24 threads)     45Mpps        54Mpps      20%
TC stack Drop (1 core)      3.45Mpps      3.6Mpps     5%
XDP Drop      (1 core)      14Mpps        16.9Mpps    20%
XDP TX        (1 core)      10.4Mpps      13.7Mpps    31%
====================

Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>