async flow rules affects pmd power management
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: [email protected]
Reporter: [email protected]
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.
Signature · 2 lines
You are receiving this mail because: You are the assignee for the bug.