From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [Bug 946] async flow rules affects pmd power management
Date: Wed, 02 Mar 2022 12:27:15 +0000 [thread overview]
Message-ID: <bug-946-3@http.bugs.dpdk.org/> (raw)
https://bugs.dpdk.org/show_bug.cgi?id=946
Bug ID: 946
Summary: async flow rules affects pmd power management
Product: DPDK
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: eventdev
Assignee: dev@dpdk.org
Reporter: david.hunt@intel.com
Target Milestone: ---
pmd power management functionality when using RTM transactions never enters
power saving mode.
When testing using l3fwd-power to test the power_pmd functionality for DPDK
22.03 rc2, I noticed that the power saved in this DPDK version was
significantly reduced.
I tried multiple BIOS/OS/kernel combinations, but then I tried DPDK 21.11,
where the problem went away.
I then did a git bisect, which narrowed down the problem to commit
197e820c6685993ad75387de79707c81b5e1fc10 - "ethdev: bring in async queue-based
flow rules operations"
The patch has the effect of causing the RTM transaction in
rte_power_monitor_multi(), in the C file lib/eal/x86/rte_power_intrinsics.c, to
always fail at rte_xbegin, so we never get to the rte_power_pause, thereby we
never get to save any power.
If we revert just this patch, then the rte_xbegin succeeds, and we get to call
rte_power_pause, and save power.
So this patch is now causing rte_power_monitor_multi() to fail.
I'm not sure what the solution is, but it may be possible to re-work the async
flow rules patch, or it may be possible to re-work the pmd_power_management
code to avoid the impact of the flow rules patch. Investigation is ongoing.
--
You are receiving this mail because:
You are the assignee for the bug.
reply other threads:[~2022-03-02 12:27 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bug-946-3@http.bugs.dpdk.org/ \
--to=bugzilla@dpdk.org \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).