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 67CB9A0547; Thu, 29 Apr 2021 17:20:11 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 308B3410DD; Thu, 29 Apr 2021 17:20:11 +0200 (CEST) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by mails.dpdk.org (Postfix) with ESMTP id 9269E406FF for ; Thu, 29 Apr 2021 17:20:10 +0200 (CEST) Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 33E535C0117; Thu, 29 Apr 2021 11:20:09 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Thu, 29 Apr 2021 11:20:09 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=fm1; bh= dtzCcmlf5CVDmfV1NcHs3BoQJ/B6chohiL+QRg0irvQ=; b=jZYq5lFdkch92I3o 1lOmnOn67ZJ9sWu1Y73vJbH92buJcImXClR5iftSLjN3FpXaOLsWXrLwA8tbajNS p+2QKmvGcJDvaDtMn9cfdNHIoblzPFZ8rUZwhGuugJnMZXOM6xA46YA+uNnZjc3l ogDTN06eTEohXUvYWx4JAaPup+VFXcIVoFfdRgyOVELzl/+4ATinL6ZBYjCkl1pZ wTPfoe/owUun/JHTNfx8ZLZ6WK7osOXOPgwvG+nYip9a9srN87VuQhYnh0Sisdr4 eTnGVyUPVtisAAYRGeHDFMMp9PclgH5m+m4YYAwbvWaRJ+Zy+7GYYWB74aCeCv+g HW+ASw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=dtzCcmlf5CVDmfV1NcHs3BoQJ/B6chohiL+QRg0ir vQ=; b=Pnkv1nCyq9YLORTTn5k28TNPSfWndkYvB4MhlbrQcOTK3/m1Dk2DYBb+0 a61s1I9TNWXMGVzgYuWwOWwJu9dr6V+gPSS85nM1vkZF4doD3JpvNQW3ZY4OeRp+ 4XRjFGiXB/3Ip0D28EM4fVYZ9YqyVOVpI2iA7pTNj/uZMrWEnz3NCBSJhHsH3smI 6AVuO2+AJfiUbE49jSC1QM7V5mlVe0vskoZ8W1c4MQIq2fMk+q/kd9Ve4OHhRG9a 7GrdkHvTbtI9XZB9KItpaME7TCkazkfi84/C5mBJY8v+3Iey2ytn9spBLGLVEjDV nrrbLHtqMWa6fQfuCWS1Ydzy02nTQ== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrvddvgedgkeekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvufffkfgjfhgggfgtsehtufertddttddvnecuhfhrohhmpefvhhhomhgr shcuofhonhhjrghlohhnuceothhhohhmrghssehmohhnjhgrlhhonhdrnhgvtheqnecugg ftrfgrthhtvghrnhepudeggfdvfeduffdtfeeglefghfeukefgfffhueejtdetuedtjeeu ieeivdffgeehnecukfhppeejjedrudefgedrvddtfedrudekgeenucevlhhushhtvghruf hiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhhomhgrshesmhhonhhjrghl ohhnrdhnvght X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 29 Apr 2021 11:20:07 -0400 (EDT) From: Thomas Monjalon To: Ruifeng Wang Cc: David Marchand , dev , "jerinj@marvell.com" , nd , Honnappa Nagarahalli , bruce.richardson@intel.com Date: Thu, 29 Apr 2021 17:20:05 +0200 Message-ID: <20248566.ii5BvqWlRQ@thomas> In-Reply-To: References: <20200424070741.16619-1-gavin.hu@arm.com> <2370044.79WzprfWfc@thomas> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] Use WFE for spinlock and ring 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" 29/04/2021 16:28, Ruifeng Wang: > From: Thomas Monjalon > > 28/04/2021 11:30, Ruifeng Wang: > > > From: David Marchand > > > > On Sun, Apr 25, 2021 at 7:57 AM Ruifeng Wang > > > > wrote: > > > > > > > > > > The rte_wait_until_equal_xxx APIs abstract the functionality of > > > > > 'polling for a memory location to become equal to a given value'[1]. > > > > > > > > > > Use the API for the rte spinlock and ring implementations. > > > > > With the wait until equal APIs being stable, changes will not impact ABI. > > > > > > > > Afaics, there is no ARM target with WFE enabled and we lost ability > > > > to enable WFE support with removal of the make build system. > > > > > > WFE can be enabled with direct meson file change. > > > WFE is not intended to be enabled by default. It can be enabled based > > > on benchmarking result on hardware. > > > > > > > > $ git grep RTE_ARM_USE_WFE > > > > config/arm/meson.build: ['RTE_ARM_USE_WFE', false], > > > > lib/eal/arm/include/rte_pause_64.h:#ifdef RTE_ARM_USE_WFE > > > > > > > > How did you enable WFE to test this series? > > > > > > I modified meson file to test. > > > Tests were also done with WFE disabled to make sure no degradation with > > generic implementation. > > > > I don't understand the usage. > > Which platform should use it? > > Platforms that implement WFE semantic (e.g. N1) can use. > The user can enable this feature for power efficiency purpose. But there is something to > note as described in commit message 1be7855d77 when the API was introduced. > > > Should it be a compile-time option? > > Yes, it should be a compile-time option. > It can be configured via c_args meson option? +Cc Bruce for discussing how to enable such feature. The problem with c_args is that the application has no way to know.