Message ID | 20230220085109.3463640-1-feifei.wang2@arm.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 A464341CE4; Mon, 20 Feb 2023 09:51:21 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 978A142FDE; Mon, 20 Feb 2023 09:51:21 +0100 (CET) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mails.dpdk.org (Postfix) with ESMTP id 6FDC540395 for <dev@dpdk.org>; Mon, 20 Feb 2023 09:51:19 +0100 (CET) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 7ED27C14; Mon, 20 Feb 2023 00:52:01 -0800 (PST) Received: from net-x86-dell-8268.shanghai.arm.com (net-x86-dell-8268.shanghai.arm.com [10.169.210.116]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 72A9C3F703; Mon, 20 Feb 2023 00:51:16 -0800 (PST) From: Feifei Wang <feifei.wang2@arm.com> To: Cc: dev@dpdk.org, david.hunt@intel.com, stephen@networkplumber.org, thomas@monjalon.net, nd@arm.com, Feifei Wang <feifei.wang2@arm.com> Subject: [PATCH v6 0/2] Enable PMD power management on Arm Date: Mon, 20 Feb 2023 16:51:07 +0800 Message-Id: <20230220085109.3463640-1-feifei.wang2@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220825064251.2637274-1-feifei.wang2@arm.com> References: <20220825064251.2637274-1-feifei.wang2@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
Enable PMD power management on Arm
|
|
Message
Feifei Wang
Feb. 20, 2023, 8:51 a.m. UTC
For Arm aarch, use WFE instructions to enable PMD power management. Test Results: dynamic instructions over 1sec without wfe with wfe percentage ampere-altra 6,298,483,712 9,117,624 -99.855% thunderx2 6,990,909,373 3,247,226 -99.954% When power efficient PMD is enabled by using WFE on Arm, if no pkts received, the instructions that CPU executes is reduced by 99%. V2: 1. move rte_wake_up API out of signal_exit(David Marchand, Thomas, Stephen) 2. Add test results when using wfe on ARM server v3: 1. make code cleaner (Stephen) v4: 1. add support check in API (Thomas) v5: 1. delete v4 check patch and l3fwd-power change. This is due to that WFE instructions can be applied into all lcores. When all cores are in 'WFE' state, kernal can run normally and receive interrupt signal to send it to the l3fwd-power thread. Thus core in 'WFE' state can exit from sleeping by interrupt event. v6: 1. delete '__check_val_size' API in ARM to simplify the code (Stephen) Feifei Wang (2): eal: add 8 bits case for wait scheme eal: add power mgmt support on Arm doc/guides/rel_notes/release_23_03.rst | 4 ++ lib/eal/arm/include/rte_pause_64.h | 32 +++++++++++++-- lib/eal/arm/rte_cpuflags.c | 5 +++ lib/eal/arm/rte_power_intrinsics.c | 55 ++++++++++++++++++++++++-- 4 files changed, 89 insertions(+), 7 deletions(-)
Comments
On Mon, Feb 20, 2023 at 9:51 AM Feifei Wang <feifei.wang2@arm.com> wrote: > > For Arm aarch, use WFE instructions to enable PMD power management. > > Test Results: > dynamic instructions over 1sec without wfe with wfe percentage > ampere-altra 6,298,483,712 9,117,624 -99.855% > thunderx2 6,990,909,373 3,247,226 -99.954% > > When power efficient PMD is enabled by using WFE on Arm, if no pkts > received, the instructions that CPU executes is reduced by 99%. > > Feifei Wang (2): > eal: add 8 bits case for wait scheme > eal: add power mgmt support on Arm > > doc/guides/rel_notes/release_23_03.rst | 4 ++ > lib/eal/arm/include/rte_pause_64.h | 32 +++++++++++++-- > lib/eal/arm/rte_cpuflags.c | 5 +++ > lib/eal/arm/rte_power_intrinsics.c | 55 ++++++++++++++++++++++++-- > 4 files changed, 89 insertions(+), 7 deletions(-) Fixed release notes, squashed patches and applied, thanks.
> -----邮件原件----- > 发件人: David Marchand <david.marchand@redhat.com> > 发送时间: Monday, February 20, 2023 8:07 PM > 收件人: Feifei Wang <Feifei.Wang2@arm.com> > 抄送: dev@dpdk.org; david.hunt@intel.com; stephen@networkplumber.org; > thomas@monjalon.net; nd <nd@arm.com> > 主题: Re: [PATCH v6 0/2] Enable PMD power management on Arm > > On Mon, Feb 20, 2023 at 9:51 AM Feifei Wang <feifei.wang2@arm.com> > wrote: > > > > For Arm aarch, use WFE instructions to enable PMD power management. > > > > Test Results: > > dynamic instructions over 1sec without wfe with wfe percentage > > ampere-altra 6,298,483,712 9,117,624 -99.855% > > thunderx2 6,990,909,373 3,247,226 -99.954% > > > > When power efficient PMD is enabled by using WFE on Arm, if no pkts > > received, the instructions that CPU executes is reduced by 99%. > > > > Feifei Wang (2): > > eal: add 8 bits case for wait scheme > > eal: add power mgmt support on Arm > > > > doc/guides/rel_notes/release_23_03.rst | 4 ++ > > lib/eal/arm/include/rte_pause_64.h | 32 +++++++++++++-- > > lib/eal/arm/rte_cpuflags.c | 5 +++ > > lib/eal/arm/rte_power_intrinsics.c | 55 ++++++++++++++++++++++++-- > > 4 files changed, 89 insertions(+), 7 deletions(-) > > Fixed release notes, squashed patches and applied, thanks. Thanks for the fix. > > > -- > David Marchand