From patchwork Thu Mar 21 06:26:01 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wenzhuo Lu X-Patchwork-Id: 51431 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6CA5F1B3EC; Thu, 21 Mar 2019 07:20:44 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 950E41B3D7 for ; Thu, 21 Mar 2019 07:20:42 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Mar 2019 23:20:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,251,1549958400"; d="scan'208";a="124512878" Received: from dpdk26.sh.intel.com ([10.67.110.164]) by orsmga007.jf.intel.com with ESMTP; 20 Mar 2019 23:20:40 -0700 From: Wenzhuo Lu To: dev@dpdk.org Cc: Wenzhuo Lu Date: Thu, 21 Mar 2019 14:26:01 +0800 Message-Id: <1553149569-105555-1-git-send-email-wenzhuo.lu@intel.com> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1551340136-83843-1-git-send-email-wenzhuo.lu@intel.com> References: <1551340136-83843-1-git-send-email-wenzhuo.lu@intel.com> Subject: [dpdk-dev] [PATCH v4 0/8] Support vector instructions on ICE X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Use SSE and AVX2 instructions in ICE RX and TX path. --- v2: - Updated feature doc. - Fixed checklog and checkpatch issues. v3: - Fixed potential compile issue on non-X86 platform. v4: - Removed compile configure, CONFIG_RTE_LIBRTE_ICE_INC_VECTOR. - Fixed checkpatch warnings. - Added more explanation of vector path in the device document. - Some other minor change. Wenzhuo Lu (8): net/ice: fix Tx function setting net/ice: add pointer for queue buffer release net/ice: support vector SSE in RX net/ice: support Rx scatter SSE vector net/ice: support Tx SSE vector net/ice: support Rx AVX2 vector net/ice: support Rx scatter AVX2 vector net/ice: support vector AVX2 in TX doc/guides/nics/features/ice_vec.ini | 35 ++ doc/guides/nics/ice.rst | 17 + doc/guides/rel_notes/release_19_05.rst | 4 + drivers/net/ice/Makefile | 22 + drivers/net/ice/ice_ethdev.c | 3 +- drivers/net/ice/ice_ethdev.h | 2 + drivers/net/ice/ice_rxtx.c | 99 +++- drivers/net/ice/ice_rxtx.h | 37 ++ drivers/net/ice/ice_rxtx_vec_avx2.c | 844 +++++++++++++++++++++++++++++++++ drivers/net/ice/ice_rxtx_vec_common.h | 288 +++++++++++ drivers/net/ice/ice_rxtx_vec_sse.c | 672 ++++++++++++++++++++++++++ drivers/net/ice/meson.build | 20 + 12 files changed, 2030 insertions(+), 13 deletions(-) create mode 100644 doc/guides/nics/features/ice_vec.ini create mode 100644 drivers/net/ice/ice_rxtx_vec_avx2.c create mode 100644 drivers/net/ice/ice_rxtx_vec_common.h create mode 100644 drivers/net/ice/ice_rxtx_vec_sse.c