From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D9456A0A02; Fri, 21 May 2021 11:07:20 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C7EAC4069D; Fri, 21 May 2021 11:07:20 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id ABEB340143 for ; Fri, 21 May 2021 11:07:19 +0200 (CEST) IronPort-SDR: a/jxDWt8nv23H3R3AvK6EKi8aQgWMHq8MoT/9T2+ywXKZbi7SFLZxHO7Nvhzg71IjN3DMNyR5L aPMWcYz4uGjw== X-IronPort-AV: E=McAfee;i="6200,9189,9990"; a="262660382" X-IronPort-AV: E=Sophos;i="5.82,313,1613462400"; d="scan'208";a="262660382" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 May 2021 02:07:18 -0700 IronPort-SDR: ulrl5LnLwkzSMPJNFQ2jsheVdFC+j1DtxPGdvTARHU/+3E5/nakEjaUjTktnXNyMK53rS0bvc+ 0s1qcIVqOEsQ== X-IronPort-AV: E=Sophos;i="5.82,313,1613462400"; d="scan'208";a="474437461" Received: from bricha3-mobl.ger.corp.intel.com ([10.252.23.231]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 21 May 2021 02:07:16 -0700 Date: Fri, 21 May 2021 10:07:07 +0100 From: Bruce Richardson To: Liang Ma Cc: Thomas Monjalon , dev@dpdk.org, Konstantin Ananyev Message-ID: References: <20210520212203.GA26@DESKTOP-POQV63C.localdomain> <28959083.qiruW6CpZX@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Subject: Re: [dpdk-dev] Question Of binutils-avx512-check 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 Sender: "dev" On Fri, May 21, 2021 at 09:55:37AM +0100, Liang Ma wrote: > On Fri, May 21, 2021 at 09:19:53AM +0100, Bruce Richardson wrote: > > On Fri, May 21, 2021 at 08:56:50AM +0100, Liang Ma wrote: > > > On Fri, May 21, 2021 at 09:04:06AM +0200, Thomas Monjalon wrote: > > > > 20/05/2021 23:22, Liang Ma: > > > > > Hi All, > > > > > I try to build DPDK with debug build-type but the building process is > > > > > failed becuase of AVX512 code from librte-acl. The release build type > > > > > is fine. Hence, I dig a bit into the avx512 enabling logic of meson. > > > > > > > > > > I found the main logic is implemented inside binutils-avx512-check.sh. > > > > > > > > > > It looks the script focus on checking the compatiblity of tools-chain > > > > > instead of CPUID. My problem is current script will produce avx512 > > > > > code even I build dpdk on AMD platform. I understand the avx512 code > > > > > may not be used in runtime. I just wonder why we can not check the > > > > > cpuid as well ? > > > > > > > > The same binary can be run on multiple CPUs, > > > > so it makes no sense to check the compilation CPUID in generic compilation. > > > > For native build, why not. > > > > > > > > Anyway, your problem is at compilation, not runtime, right? > > > Yes, the problem is at compilation. > > > Given X86_64, gcc-6.30, Debug build always failed due > > > to librte_acl AVX512 code. I hope there is a graceful switch allow > > > developer disable avx512 in certain circumstance. > > > > Add ACL maintainer on CC. Sounds like there is a problem with the AVX512 > > support detection for acl library. Looking at the meson build code, other > > drivers, such as i40e, do their avx512 detection differently from ACL. > there are 2 concerns here: > 1. librte_acl specific issue cause the debug building failure with gcc 6.30. +1. This needs to be investigated and fixed if it's causing problems. > 2. More generic, if that's possible to have a graceful switch for avx512.(e.g. build option) Not sure why this is wanted because any AVX512 paths won't be used at runtime unless suitable for use. In any case, this should be already doable by passing -mno-avx512 flag in CFLAGS/c_args at config time.