From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id F1E89A04DD; Wed, 18 Nov 2020 15:54:52 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0C60DC90E; Wed, 18 Nov 2020 15:54:51 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id D4028C90A for ; Wed, 18 Nov 2020 15:54:48 +0100 (CET) IronPort-SDR: zu/nPce2nY3L6YTYYBtW9V2uWJupeItrpDKA/k7rPEj1dgCYETEbUd1iTgf3spM3bg76g4NVDy qtpOZcxmkJ8g== X-IronPort-AV: E=McAfee;i="6000,8403,9808"; a="232738880" X-IronPort-AV: E=Sophos;i="5.77,486,1596524400"; d="scan'208";a="232738880" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Nov 2020 06:54:45 -0800 IronPort-SDR: IwB6EYUk7TkXExmzjJYy5OiuGVibsDG6JjRb+XW99XCI3IJEhkoj90MFXbOvaVvK9BIhckYdJl IlhQxUsEt5Cw== X-IronPort-AV: E=Sophos;i="5.77,486,1596524400"; d="scan'208";a="544559385" Received: from bricha3-mobl.ger.corp.intel.com ([10.252.19.243]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 18 Nov 2020 06:54:43 -0800 Date: Wed, 18 Nov 2020 14:54:40 +0000 From: Bruce Richardson To: Thomas Monjalon Cc: Juraj =?utf-8?Q?Linke=C5=A1?= , "Ruifeng.Wang@arm.com" , "Honnappa.Nagarahalli@arm.com" , "Phil.Yang@arm.com" , "vcchunga@amazon.com" , "Dharmik.Thakkar@arm.com" , "jerinjacobk@gmail.com" , "hemant.agrawal@nxp.com" , "ajit.khaparde@broadcom.com" , "ferruh.yigit@intel.com" , "dev@dpdk.org" Message-ID: <20201118145440.GB1362@bricha3-MOBL.ger.corp.intel.com> References: <1605267483-13167-1-git-send-email-juraj.linkes@pantheon.tech> <11763925.GOiJPSdkav@thomas> <2337679.hKZaPKL2be@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <2337679.hKZaPKL2be@thomas> Subject: Re: [dpdk-dev] [PATCH v12 09/14] build: optional NUMA and cpu counts detection 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" On Wed, Nov 18, 2020 at 03:42:36PM +0100, Thomas Monjalon wrote: > 18/11/2020 15:19, Juraj Linkeš: > > From: Thomas Monjalon > > > 16/11/2020 10:13, Bruce Richardson: > > > > On Mon, Nov 16, 2020 at 08:24:48AM +0100, Thomas Monjalon wrote: > > > > > 13/11/2020 15:31, Juraj Linkeš: > > > > > > +option('max_lcores', type: 'integer', value: 0, > > > > > > + description: 'maximum number of cores/threads supported by EAL. > > > > > > +Set to positive integer to overwrite per-arch or cross-compilation > > > defaults. Set to -1 to detect the number of cores on the build machine.') > > > option('max_numa_nodes', type: 'integer', value: 0, > > > > > > + description: 'maximum number of NUMA nodes supported by EAL. Set > > > > > > +to positive integer to overwrite per-arch or cross-compilation > > > > > > +defaults. Set to -1 to detect the number of numa nodes on the > > > > > > +build machine.') > > > > > > > > > > First comment: I don't like having so long description. > > > > > Second: I don't understand. > > > > > > > > > > It is said the default value is 0 so I expect it means automatic detection. > > > > > But later it is said -1 is for detection. So ? > > > > > > > > > Zero is for the "per-arch or cross-compilation default". This was > > > > discussed quite a bit in previous versions and this was te best > > > > compromise we could come up with. Having a default of auto-detect is > > > > definitely not something I think we should go with - just thinking of > > > > all the build CI jobs running on > > > > 2 or 4 core VMs! However, Juraj really felt there was value in having > > > > auto-detection, so it's set as a -1 value, which I'm ok with. > > > > > > The problem is that I don't understand what 0 means. > > > > > > > There are three pieces of information which we need to convey: > > 1. The default value (0) indicates that per-arch or cross-compilation defaults will be used. > > 2. Positive integer values will be used instead of these defaults. > > Where these positive values come from? > > > 3. Detected values will be used for native build when the value is -1. > > Why not detect for any native build set up with 0 (default)? > That was one of the original suggestions, but I strongly disagreed with that, because many builds are done on hardware very different from the final deployment. It would mean that any builds done in e.g. jenkins or travis, with a 2-core vm, would be limited to running with two cores only.