Message ID | 1594643247-11094-1-git-send-email-radu.nicolau@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0A484A0540; Mon, 13 Jul 2020 14:27:58 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DCB8A1D689; Mon, 13 Jul 2020 14:27:57 +0200 (CEST) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 5DC1E1D67F for <dev@dpdk.org>; Mon, 13 Jul 2020 14:27:56 +0200 (CEST) IronPort-SDR: oipMQh3UjRKeNrzWa6+YJm/1Gf9/wFdzHYVjJ5aSOCRXWl3aHrnNnTkRQdVNsVnuQftpCvjgRg ySml64dfVyFg== X-IronPort-AV: E=McAfee;i="6000,8403,9680"; a="136070921" X-IronPort-AV: E=Sophos;i="5.75,347,1589266800"; d="scan'208";a="136070921" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Jul 2020 05:27:55 -0700 IronPort-SDR: pkKEZyY/OmTb8ePxUOgfxe4y119/MnbHGNcJFI0t/9z/Zve5dPWGDxQjcEKX//Ezjxmh0jVChv kBp72YD2aiJA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,347,1589266800"; d="scan'208";a="285370373" Received: from silpixa00383879.ir.intel.com ([10.237.222.142]) by orsmga006.jf.intel.com with ESMTP; 13 Jul 2020 05:27:53 -0700 From: Radu Nicolau <radu.nicolau@intel.com> To: dev@dpdk.org Cc: beilei.xing@intel.com, jia.guo@intel.com, bruce.richardson@intel.com, konstantin.ananyev@intel.com, jerinjacobk@gmail.com, david.marchand@redhat.com, fiona.trahe@intel.com, wei.zhao1@intel.com, Radu Nicolau <radu.nicolau@intel.com> Date: Mon, 13 Jul 2020 13:27:23 +0100 Message-Id: <1594643247-11094-1-git-send-email-radu.nicolau@intel.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1591870283-7776-1-git-send-email-radu.nicolau@intel.com> References: <1591870283-7776-1-git-send-email-radu.nicolau@intel.com> Subject: [dpdk-dev] [PATCH v6 0/4] eal: add WC store functions X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series | eal: add WC store functions | |
Message
Radu Nicolau
July 13, 2020, 12:27 p.m. UTC
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, IXGBE and QAT PMDs are updated to use the write combining store functions with other PMDs to follow. Radu Nicolau (4): eal: add WC store functions net/i40e: use WC store to update queue tail registers qat: use WC store to update queue tail registers net/ixgbe: use WC store to update doorbell register .../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/ixgbe/base/ixgbe_osdep.h | 6 +++ drivers/net/ixgbe/ixgbe_rxtx.c | 4 +- drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 4 +- lib/librte_eal/include/generic/rte_io.h | 48 +++++++++++++++++++ lib/librte_eal/x86/include/rte_io.h | 56 ++++++++++++++++++++++ 10 files changed, 131 insertions(+), 14 deletions(-)