[dpdk-dev] [PATCH v12 0/5] eal: add WC store functions

Radu Nicolau radu.nicolau at intel.com
Wed Sep 23 16:22:48 CEST 2020


Implement 2 new functions that will enable write combining
stores depending on architecture. The functions are provided
as a generic stub and a x86 specific implementation.

The reason to implement these functions is to improve performance
by reducing the overhead associated with regular mmio writes when
updating the hardware queue tails and doorbells.

With this patch set the I40E, ICE, IXGBE and QAT PMDs are updated to
use the write combining store functions with other PMDs to follow.


Radu Nicolau (5):
  eal: add WC store functions
  net/i40e: use WC store to update queue tail registers
  common/qat: use WC store to update queue tail registers
  net/ixgbe: use WC store to update queue tail registers
  net/ice: use WC store to update queue tail registers

 doc/guides/rel_notes/release_20_11.rst        | 22 +++++++++
 .../qat/qat_adf/adf_transport_access_macros.h |  6 ++-
 drivers/net/i40e/base/i40e_osdep.h            |  5 ++
 drivers/net/i40e/i40e_rxtx.c                  |  8 ++--
 drivers/net/i40e/i40e_rxtx_vec_avx2.c         |  4 +-
 drivers/net/i40e/i40e_rxtx_vec_sse.c          |  4 +-
 drivers/net/ice/base/ice_osdep.h              |  1 +
 drivers/net/ice/ice_rxtx.c                    |  6 +--
 drivers/net/ice/ice_rxtx_vec_avx2.c           |  4 +-
 drivers/net/ice/ice_rxtx_vec_sse.c            |  4 +-
 drivers/net/ixgbe/base/ixgbe_osdep.h          |  6 +++
 drivers/net/ixgbe/ixgbe_rxtx.c                | 15 +++---
 drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c        |  4 +-
 lib/librte_eal/arm/include/rte_io_64.h        | 12 +++++
 lib/librte_eal/include/generic/rte_io.h       | 48 +++++++++++++++++++
 lib/librte_eal/x86/include/rte_io.h           | 42 ++++++++++++++++
 16 files changed, 165 insertions(+), 26 deletions(-)

-- 
2.17.1



More information about the dev mailing list