From patchwork Tue Oct 1 11:17:54 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144829 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 79EA845A7B; Tue, 1 Oct 2024 13:18:17 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2234840611; Tue, 1 Oct 2024 13:18:13 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id F16B44027E for ; Tue, 1 Oct 2024 13:18:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781491; x=1759317491; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=X1O2Bv6YmvFR10aY3fP27Qrz81ZuRRTkHkAsQyPy5KY=; b=Vj5VN0P1DDGHyynkD5pnfCQGIazQBAFu6xUlXaIn0S7Tp6nV2LXV5pfw HvUNsZefPYJsmjbR4Ohv5xzMQaD3wVDevL9x0bAr9WJud3MuH+OxjDpy6 DgPSFb+rAha5lsn9w6sYC8cR+KIxvHSKl78PuZnVKQi3VyjVM0BwPRL25 q93QLcTaXkA1LlnohD5JNdAEoxnNkMloWh/xty44CCXr78mFLOCQXo3pA a3FI25EZ0KnrvKn2XcT0b2ifzWbP5WG7dzR7P48HecHraoGn6gp+NqjaJ 0iufpSBHYSyMgw+Rgj7HPuTDDvNoLP9M6Bu/ulVgefuXh0/+nsVST22v/ A==; X-CSE-ConnectionGUID: 9C7qKSHPSWipVUimkFEsvA== X-CSE-MsgGUID: cQMVI5epSsqLQgt3dm3H9Q== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084532" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084532" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:10 -0700 X-CSE-ConnectionGUID: XcmrfBzhTMSIF3p3nMNPlA== X-CSE-MsgGUID: JkMS75M5RVyg6DgiZ5Zc0A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047077" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:10 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , Konstantin Ananyev Subject: [PATCH v2 1/8] config/x86: add global defines for checking AVX-512 Date: Tue, 1 Oct 2024 12:17:54 +0100 Message-ID: <20241001111802.2728765-2-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Rather than having each driver do its own checking for AVX-512 support, let's do it once in config/x86/meson.build and let all drivers re-use that result. Signed-off-by: Bruce Richardson --- config/x86/meson.build | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/config/x86/meson.build b/config/x86/meson.build index 8087b9ae91..265580a555 100644 --- a/config/x86/meson.build +++ b/config/x86/meson.build @@ -14,16 +14,27 @@ if is_linux or cc.get_id() == 'gcc' endif endif -# check if compiler is working with _mm512_extracti64x4_epi64 -# Ref: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82887 -if cc.has_argument('-mavx512f') +cc_avx512_flags = ['-mavx512f', '-mavx512vl', '-mavx512dq', '-mavx512bw'] +cc_has_avx512 = false +target_has_avx512 = false +if binutils_ok and cc.has_multi_arguments(cc_avx512_flags) + # check if compiler is working with _mm512_extracti64x4_epi64 + # Ref: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82887 code = '''#include void test(__m512i zmm){ __m256i ymm = _mm512_extracti64x4_epi64(zmm, 0);}''' - result = cc.compiles(code, args : '-mavx512f', name : 'AVX512 checking') + result = cc.compiles(code, args : cc_avx512_flags, name : 'AVX512 checking') if result == false machine_args += '-mno-avx512f' warning('Broken _mm512_extracti64x4_epi64, disabling AVX512 support') + else + cc_has_avx512 = true + target_has_avx512 = ( + cc.get_define('__AVX512F__', args: machine_args) != '' and + cc.get_define('__AVX512BW__', args: machine_args) != '' and + cc.get_define('__AVX512DQ__', args: machine_args) != '' and + cc.get_define('__AVX512VL__', args: machine_args) != '' + ) endif endif From patchwork Tue Oct 1 11:17:55 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144830 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 81BAC45A7B; Tue, 1 Oct 2024 13:18:23 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5219F4065C; Tue, 1 Oct 2024 13:18:14 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 008404027E for ; Tue, 1 Oct 2024 13:18:11 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781492; x=1759317492; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=18gfSZsVr7zlOAYQ2CVL8o5ncx1hmtGvDycszfdS7EU=; b=AeIvf92EyoBXg/L9v4nrbBQwDlbKORs3y9oO5cqDIQQIMpFA7gEkpU6E EXxAmmzuuT4bHON5GK+OBvsZjjY51iW8G5AS/0jZ5HBLQ8O817zSET+Qx qJtSFcyDxjrN1Znm+KOROWGRJt5E2cxgrbS7TT3OnxW1mk4pas5/6qIc4 EfJCMuWrJHROCReflfKezEhi3iqTptc4CVxlpPural/XnTbX+41PqIMle aqRNBBoGtcM/mm9P1rTxvIMnfzIraH1DXADi/f5r+BsTgHB73jDvF6bzX tvtv3WX3j7ha9127zsOH0MPQUg3XTeMz8WiF96HiIZOi69UIgstaqAIKe Q==; X-CSE-ConnectionGUID: gVrjQJohRIqMFoeCFhJaeA== X-CSE-MsgGUID: uBIyF71hQmK13/n/PC6xwg== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084536" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084536" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:11 -0700 X-CSE-ConnectionGUID: SmBO4gcFQ1iKs2yE3VEYgg== X-CSE-MsgGUID: +wSjiGzDQ3+fI/NY66adHw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047080" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:11 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , Abdullah Sevincer Subject: [PATCH v2 2/8] event/dlb2: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:17:55 +0100 Message-ID: <20241001111802.2728765-3-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/event/dlb2/meson.build | 42 ++++++++-------------------------- 1 file changed, 9 insertions(+), 33 deletions(-) diff --git a/drivers/event/dlb2/meson.build b/drivers/event/dlb2/meson.build index 515d1795fe..34131fd18b 100644 --- a/drivers/event/dlb2/meson.build +++ b/drivers/event/dlb2/meson.build @@ -26,43 +26,19 @@ sources = files( # we are building 64-bit binary (checked above) AND binutils # can generate proper code -if binutils_ok +if target_has_avx512 + sources += files('dlb2_avx512.c') + cflags += '-DCC_AVX512_SUPPORT' - # compile AVX512 version if either: - # a. we have AVX512VL supported in minimum instruction set - # baseline - # b. it's not minimum instruction set, but supported by - # compiler - # - # in former case, just add avx512 C file to files list - # in latter case, compile c file to static lib, using correct - # compiler flags, and then have the .o file from static lib - # linked into main lib. - - # check if all required flags already enabled (variant a). - dlb2_avx512_on = false - if cc.get_define('__AVX512VL__', args: machine_args) != '' - dlb2_avx512_on = true - endif - - if dlb2_avx512_on == true - - sources += files('dlb2_avx512.c') - cflags += '-DCC_AVX512_SUPPORT' - - elif cc.has_multi_arguments('-mavx512vl') - - cflags += '-DCC_AVX512_SUPPORT' - avx512_tmplib = static_library('avx512_tmp', +elif cc_has_avx512 + cflags += '-DCC_AVX512_SUPPORT' + avx512_tmplib = static_library('avx512_tmp', 'dlb2_avx512.c', dependencies: [static_rte_eal, static_rte_eventdev], - c_args: cflags + ['-mavx512vl']) - objs += avx512_tmplib.extract_objects('dlb2_avx512.c') - else - sources += files('dlb2_sse.c') - endif + c_args: cflags + cc_avx512_flags) + objs += avx512_tmplib.extract_objects('dlb2_avx512.c') else - sources += files('dlb2_sse.c') + sources += files('dlb2_sse.c') endif headers = files('rte_pmd_dlb2.h') From patchwork Tue Oct 1 11:17:56 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144831 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8523B45A7B; Tue, 1 Oct 2024 13:18:29 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9A5924065F; Tue, 1 Oct 2024 13:18:15 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 2B6FE40615 for ; Tue, 1 Oct 2024 13:18:13 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781493; x=1759317493; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=T9hnyIlyeZi7xhyZkEsGNLwLOUJCnYNVyDS0z/6NgZE=; b=Fzf45G2z/kFsoHJVyhdjzyrLsGryEvddhrtOb8bPZxoZlO5ptIfPo60S J6JmlEqlqVA4D9bUK1cAqGPfPi+VFj5Fsxp4RIPvniB4jylcnq1SExPld vWsJA3d2aEs/YQQei/JVz+7Fzp9rX3KPFcvFUgWDUa+c4rIEgeTdLZNab y6GN1ZXbftZHSu0n5zjwOAstvENz2pUvdV6Xlwn3jBHOX2GRy3pisyWOT Nu0n+Xsx/tK1GUZLk9SYpR/B/0oBm5kD0pqIQrUTFLnvkzDgmJMjEdXdy 1cEhcRvrymb/VEs5jsJpXRko2whoui+PFcXayIcqTnycSLeFW/3J5C8HY g==; X-CSE-ConnectionGUID: ZP5+hKOiR5albcBUTkVBvA== X-CSE-MsgGUID: FvN+6ESJR+GVpESkpqijxg== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084538" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084538" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:12 -0700 X-CSE-ConnectionGUID: TtfjeY8yQZ+eYU9zSErpDQ== X-CSE-MsgGUID: XqQyGUWATtyWwx+6d981RQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047083" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:12 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , Jingjing Wu Subject: [PATCH v2 3/8] common/idpf: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:17:56 +0100 Message-ID: <20241001111802.2728765-4-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/common/idpf/meson.build | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/drivers/common/idpf/meson.build b/drivers/common/idpf/meson.build index 80c8906f80..cf00176293 100644 --- a/drivers/common/idpf/meson.build +++ b/drivers/common/idpf/meson.build @@ -16,22 +16,9 @@ sources = files( ) if arch_subdir == 'x86' - idpf_avx512_cpu_support = ( - cc.get_define('__AVX512F__', args: machine_args) != '' and - cc.get_define('__AVX512BW__', args: machine_args) != '' and - cc.get_define('__AVX512DQ__', args: machine_args) != '' - ) - - idpf_avx512_cc_support = ( - not machine_args.contains('-mno-avx512f') and - cc.has_argument('-mavx512f') and - cc.has_argument('-mavx512bw') and - cc.has_argument('-mavx512dq') - ) - - if idpf_avx512_cpu_support == true or idpf_avx512_cc_support == true + if cc_has_avx512 cflags += ['-DCC_AVX512_SUPPORT'] - avx512_args = [cflags, '-mavx512f', '-mavx512bw', '-mavx512dq'] + avx512_args = [cflags] + cc_avx512_flags if cc.has_argument('-march=skylake-avx512') avx512_args += '-march=skylake-avx512' endif From patchwork Tue Oct 1 11:17:57 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144832 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6F84B45A7B; Tue, 1 Oct 2024 13:18:35 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CBC9040673; Tue, 1 Oct 2024 13:18:16 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 3F0A240656 for ; Tue, 1 Oct 2024 13:18:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781494; x=1759317494; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=gTzYQXWgFvBqavQVlUMy46PW20g2yy1byPty5unEh0Y=; b=Xexcljg6xqWcpAHUNL9jCC1UknUMb2B5QeqWaGTioAzNrvp79ZVHcYR0 hNJkzUIt4Ig9LCOheiTml3BW9QPC0zo6rhuhIrj0Gca15ORfVZHKPMdnR IDx9Vo+TFMYSgLTtzeFhzHpksCSfgeVDzPmfd3gPZx0GAr8iKCcfsFkxZ a5CZIKpiWvRTEcnQIaX1a0xRH+TpSTh6c/7HovnxlDfjhASKzOmgBgHbT TOHCKnSpDtdGRrmvpnMFGy7iQTvhePJodKZQigKsPmvk5lFKQiKJ0y2Qq LKvEjTlB1kR9zbZflI3MxbfL7XnkLekmRqrgHyXTVy4zkAVL+tg0kax2D g==; X-CSE-ConnectionGUID: e+B8Uy1rRl+sqaZo2UYpwA== X-CSE-MsgGUID: btxH0u/YTGO39rLTaSYlrg== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084540" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084540" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:13 -0700 X-CSE-ConnectionGUID: cstlHIuhRza9hOQUdVosTA== X-CSE-MsgGUID: YyVio98JQFCBQegJolfcNg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047090" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:13 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Subject: [PATCH v2 4/8] net/cpfl: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:17:57 +0100 Message-ID: <20241001111802.2728765-5-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/net/cpfl/meson.build | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/drivers/net/cpfl/meson.build b/drivers/net/cpfl/meson.build index e4e0e269bd..87fcfe0bb1 100644 --- a/drivers/net/cpfl/meson.build +++ b/drivers/net/cpfl/meson.build @@ -22,23 +22,8 @@ sources = files( 'cpfl_rules.c', ) -if arch_subdir == 'x86' - cpfl_avx512_cpu_support = ( - cc.get_define('__AVX512F__', args: machine_args) != '' and - cc.get_define('__AVX512BW__', args: machine_args) != '' and - cc.get_define('__AVX512DQ__', args: machine_args) != '' - ) - - cpfl_avx512_cc_support = ( - not machine_args.contains('-mno-avx512f') and - cc.has_argument('-mavx512f') and - cc.has_argument('-mavx512bw') and - cc.has_argument('-mavx512dq') - ) - - if cpfl_avx512_cpu_support == true or cpfl_avx512_cc_support == true - cflags += ['-DCC_AVX512_SUPPORT'] - endif +if arch_subdir == 'x86' and cc_has_avx512 + cflags += ['-DCC_AVX512_SUPPORT'] endif if dpdk_conf.has('RTE_HAS_JANSSON') From patchwork Tue Oct 1 11:17:58 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144833 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 15CC445A7B; Tue, 1 Oct 2024 13:18:42 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 12D8F40676; Tue, 1 Oct 2024 13:18:18 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 22F834060F for ; Tue, 1 Oct 2024 13:18:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781495; x=1759317495; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=0I9OyarlESUJNTZ1B8YKEjiA6Zw0jtL0IHbp1FqaDX0=; b=i/QNdxeT8WS4AnOW/Ynb6drPFXEDpcgsLvMlD1N9rVXhoBilk7hurIoQ LYBTT1VrPf8OeQpXNQ+ecDGVHE8kZX7o/T/VDkjjpT36M2sCXwUm8HpP1 t5FHhoaoD3d4jyMAKDvd1rX5WmR9N4kqbMoy7N5hjpVJvXvwqM38To5vq 3nVzeU7Hc66WaDADf+GnIHpKhLkVEFajGWuLcs2sOEbU/4y5M440lkhMP 0PcSJgUAea58utmon9SNs+aLqO8z4r59Or1CnJ2uwqW6sc92NK9rkuCN0 hFSTUCDTI40iLvoP7H952QHtAhscgS2L4iQLBcvuVLgWckcOHQcjW3WCm Q==; X-CSE-ConnectionGUID: 72UbM24VSmqSbxC2catIQg== X-CSE-MsgGUID: xmi0ftamSKynMddJsvkR6w== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084543" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084543" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:14 -0700 X-CSE-ConnectionGUID: jcutYbrOQ4efx8DlPqhq5Q== X-CSE-MsgGUID: VLgntSaUTWGa6cvMpnZDLA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047095" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:14 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Subject: [PATCH v2 5/8] net/i40e: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:17:58 +0100 Message-ID: <20241001111802.2728765-6-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/net/i40e/meson.build | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build index 80171b9dc6..ef7b1f5d34 100644 --- a/drivers/net/i40e/meson.build +++ b/drivers/net/i40e/meson.build @@ -57,18 +57,9 @@ if arch_subdir == 'x86' c_args: [cflags, '-mavx2']) objs += i40e_avx2_lib.extract_objects('i40e_rxtx_vec_avx2.c') - i40e_avx512_cpu_support = ( - cc.get_define('__AVX512F__', args: machine_args) != '' and - cc.get_define('__AVX512BW__', args: machine_args) != '') - - i40e_avx512_cc_support = ( - not machine_args.contains('-mno-avx512f') and - cc.has_argument('-mavx512f') and - cc.has_argument('-mavx512bw')) - - if i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true + if cc_has_avx512 cflags += ['-DCC_AVX512_SUPPORT'] - avx512_args = [cflags, '-mavx512f', '-mavx512bw'] + avx512_args = cflags + cc_avx512_flags if cc.has_argument('-march=skylake-avx512') avx512_args += '-march=skylake-avx512' endif From patchwork Tue Oct 1 11:17:59 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144834 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id C4EE445A7B; Tue, 1 Oct 2024 13:18:48 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3BC7D4068A; Tue, 1 Oct 2024 13:18:19 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 7645A4066C for ; Tue, 1 Oct 2024 13:18:16 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781496; x=1759317496; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=faeqMyLq6aiRx0SUZQq5dZ/jlxY34EQdyxGnTN9xB94=; b=KzjqmGcBIMvhcM4w33Cnx/FKiIS48sH/dGD/VB5bsB6ZQbFc0JO+orPY L19d/ooU60+E9x0gc7bXjamVE9Tsb+oYPtERgz7ylzScQP+GULHY1Ilg1 w96HuGBmsPJ4Jm2QxHXWDuAGgcYtox8JCqfSj/xJENbbSgPCvBnNfMmsZ QY599L5ytaKFrb8qvgYb4yfxdMvA1plvShMoLWSewjJxDN7TMGuo5XYu6 qkvK/5Bb8QlylAGYB8r2spaIOUEZzpQMDoRJtlObjF0ofnK0WqZqldIBK SCezI7G0vjOMDaN9RhYi53HUwxmTgDJ5DKoZRht8bMW7DKxazy20BDZCZ Q==; X-CSE-ConnectionGUID: iuNYjiOiR8SEwGd1t82K5Q== X-CSE-MsgGUID: 2Pkeq/z4SQiVPYjs29alNg== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084546" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084546" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:16 -0700 X-CSE-ConnectionGUID: FxW7S9KYS5+shaJpFRcAyw== X-CSE-MsgGUID: KoFaX74LQtK7WzMAvYNLhQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047102" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:15 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , Jingjing Wu Subject: [PATCH v2 6/8] net/iavf: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:17:59 +0100 Message-ID: <20241001111802.2728765-7-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/net/iavf/meson.build | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/drivers/net/iavf/meson.build b/drivers/net/iavf/meson.build index 83aebd5596..27d104cc12 100644 --- a/drivers/net/iavf/meson.build +++ b/drivers/net/iavf/meson.build @@ -39,18 +39,9 @@ if arch_subdir == 'x86' c_args: [cflags, '-mavx2']) objs += iavf_avx2_lib.extract_objects('iavf_rxtx_vec_avx2.c') - iavf_avx512_cpu_support = ( - cc.get_define('__AVX512F__', args: machine_args) != '' and - cc.get_define('__AVX512BW__', args: machine_args) != '') - - iavf_avx512_cc_support = ( - not machine_args.contains('-mno-avx512f') and - cc.has_argument('-mavx512f') and - cc.has_argument('-mavx512bw')) - - if iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true + if cc_has_avx512 cflags += ['-DCC_AVX512_SUPPORT'] - avx512_args = [cflags, '-mavx512f', '-mavx512bw'] + avx512_args = cflags + cc_avx512_flags if cc.has_argument('-march=skylake-avx512') avx512_args += '-march=skylake-avx512' endif From patchwork Tue Oct 1 11:18:00 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144835 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 988D245A7B; Tue, 1 Oct 2024 13:18:55 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6913B4067B; Tue, 1 Oct 2024 13:18:20 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 426F54066C for ; Tue, 1 Oct 2024 13:18:17 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781497; x=1759317497; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=jbY8jQtM5kr7SCD0OcoJ05lGNLE1QLeOaeCUaVyl39o=; b=Y30Lq053Zr+j/MvvT+e35s4d4jfOeHjRph3tYPr0BRYOeJva+w7spoRB zBofGxIODcyK0lqBjpLvCGL2LmEywpM00riKDYyiyTpzYqkrnzrcgQhpQ DX2aDIfjoPA9jfA855L/SVyFba092RQumL2UxJLkTphZnSbUcb2tX0CT8 cOoZ4ZR0dGoQAdrzrvfyMHQWtGGSba3rVZJ12mWALqIVNLHUJZ4S1aPKK CgV4EMiMxuyluCFTOAH/ABgJlqZhbKnp19h7E4UNbWfs/I7DifjiEdLMT qlUy8eyGYEK4gROyPw1sB5itX6TkKfW7KDyxrNfPgExhPHeQHqbNfyBvv A==; X-CSE-ConnectionGUID: 7OUDKkSJRyylSscnvIezDA== X-CSE-MsgGUID: MoSfme+sR4mF5TsnUybSHw== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084548" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084548" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:16 -0700 X-CSE-ConnectionGUID: 4xPYZ0pxTGadADFf0CuQdA== X-CSE-MsgGUID: ks5w61YeRuSsJjuVRuyg0A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047105" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:16 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Subject: [PATCH v2 7/8] net/ice: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:18:00 +0100 Message-ID: <20241001111802.2728765-8-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/net/ice/meson.build | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/drivers/net/ice/meson.build b/drivers/net/ice/meson.build index b7f2188e62..1c9dc0cc6d 100644 --- a/drivers/net/ice/meson.build +++ b/drivers/net/ice/meson.build @@ -35,20 +35,9 @@ if arch_subdir == 'x86' c_args: [cflags, '-mavx2']) objs += ice_avx2_lib.extract_objects('ice_rxtx_vec_avx2.c') - ice_avx512_cpu_support = ( - cc.get_define('__AVX512F__', args: machine_args) != '' and - cc.get_define('__AVX512BW__', args: machine_args) != '' - ) - - ice_avx512_cc_support = ( - not machine_args.contains('-mno-avx512f') and - cc.has_argument('-mavx512f') and - cc.has_argument('-mavx512bw') - ) - - if ice_avx512_cpu_support == true or ice_avx512_cc_support == true + if cc_has_avx512 cflags += ['-DCC_AVX512_SUPPORT'] - avx512_args = [cflags, '-mavx512f', '-mavx512bw'] + avx512_args = cflags + cc_avx512_flags if cc.has_argument('-march=skylake-avx512') avx512_args += '-march=skylake-avx512' endif From patchwork Tue Oct 1 11:18:01 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 144836 X-Patchwork-Delegate: david.marchand@redhat.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 4F29445A7B; Tue, 1 Oct 2024 13:19:05 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2A7504067A; Tue, 1 Oct 2024 13:18:22 +0200 (CEST) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.14]) by mails.dpdk.org (Postfix) with ESMTP id 5FD49402BB for ; Tue, 1 Oct 2024 13:18:18 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1727781498; x=1759317498; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=Lst06Y65vzNeyqtaSv3LNJfEQUyuATN1vY9ZqmD/D6U=; b=TifkmjUz/gEpNtgABvD0c0Gv0zCp8Wu2hEHCofSn75hcXuGr06C5tuuQ ZsAlINvP9lfvuHhYSl1vMK7FDL9Lb0wmDsLwX66pj2ZUpOeocy0Bt5E2V sn8xa6MclwLDDnFfbUyQYoVVVcdmchmrI4QKIT7xswp/4ZW4MhA1K2/X9 1Wh1yvx/f0OF6JH+SkOVdIghWESVyLCv81uAhF/fs7pr77IH+Poj0zweo ncEDYvEw5Obi8YeG8G+yoQpDpQlj7M5h9P3LtT6bFhhiGt9YXJUGJ9rMc TQCOlhyX3brzKcFVPgxu29YlpSxuzvHKxWUmrQceEx/9ZpN1M+L7UwBCa A==; X-CSE-ConnectionGUID: tFlh+2dVR9GMbCqkq6uK7A== X-CSE-MsgGUID: BUiybmXqS8OCvLkZ6zJJgw== X-IronPort-AV: E=McAfee;i="6700,10204,11211"; a="27084550" X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="27084550" Received: from orviesa007.jf.intel.com ([10.64.159.147]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Oct 2024 04:18:18 -0700 X-CSE-ConnectionGUID: Fp3tt69ERr6QiIFDrwS8nw== X-CSE-MsgGUID: nsTn6pqsS86q2uzYys818w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.11,167,1725346800"; d="scan'208";a="74047110" Received: from unknown (HELO silpixa00401385.ir.intel.com) ([10.237.214.25]) by orviesa007.jf.intel.com with ESMTP; 01 Oct 2024 04:18:17 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , Jingjing Wu Subject: [PATCH v2 8/8] net/idpf: use global AVX-512 variables Date: Tue, 1 Oct 2024 12:18:01 +0100 Message-ID: <20241001111802.2728765-9-bruce.richardson@intel.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241001111802.2728765-1-bruce.richardson@intel.com> References: <20240930175033.2283861-1-bruce.richardson@intel.com> <20241001111802.2728765-1-bruce.richardson@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Replace per-driver checks for AVX-512 with the standard variables from config/x86. Signed-off-by: Bruce Richardson --- drivers/net/idpf/meson.build | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) diff --git a/drivers/net/idpf/meson.build b/drivers/net/idpf/meson.build index cf49ef167d..34cbdc4da0 100644 --- a/drivers/net/idpf/meson.build +++ b/drivers/net/idpf/meson.build @@ -14,21 +14,6 @@ sources = files( 'idpf_rxtx.c', ) -if arch_subdir == 'x86' - idpf_avx512_cpu_support = ( - cc.get_define('__AVX512F__', args: machine_args) != '' and - cc.get_define('__AVX512BW__', args: machine_args) != '' and - cc.get_define('__AVX512DQ__', args: machine_args) != '' - ) - - idpf_avx512_cc_support = ( - not machine_args.contains('-mno-avx512f') and - cc.has_argument('-mavx512f') and - cc.has_argument('-mavx512bw') and - cc.has_argument('-mavx512dq') - ) - - if idpf_avx512_cpu_support == true or idpf_avx512_cc_support == true - cflags += ['-DCC_AVX512_SUPPORT'] - endif +if arch_subdir == 'x86'and cc_has_avx512 + cflags += ['-DCC_AVX512_SUPPORT'] endif