[dpdk-dev] [PATCH v6 0/7] Enhancements for PMD power management
Anatoly Burakov
anatoly.burakov at intel.com
Mon Jul 5 17:21:55 CEST 2021
This patchset introduces several changes related to PMD power management:
- Changed monitoring intrinsics to use callbacks as a comparison function, based
on previous patchset [1] but incorporating feedback [2] - this hopefully will
make it possible to add support for .get_monitor_addr in virtio
- Add a new intrinsic to monitor multiple addresses, based on RTM instruction
set and the TPAUSE instruction
- Add support for PMD power management on multiple queues, as well as all
accompanying infrastructure and example apps changes
v6:
- Improved the algorithm for multi-queue sleep
- Fixed segfault and addressed other feedback
v5:
- Removed "power save queue" API and replaced with mechanism suggested by
Konstantin
- Addressed other feedback
v4:
- Replaced raw number with a macro
- Fixed all the bugs found by Konstantin
- Some other minor corrections
v3:
- Moved some doc updates to NIC features list
v2:
- Changed check inversion to callbacks
- Addressed feedback from Konstantin
- Added doc updates where necessary
[1] http://patches.dpdk.org/project/dpdk/list/?series=16930&state=*
[2] http://patches.dpdk.org/project/dpdk/patch/819ef1ace187365a615d3383e54579e3d9fb216e.1620747068.git.anatoly.burakov@intel.com/#133274
Anatoly Burakov (7):
power_intrinsics: use callbacks for comparison
net/af_xdp: add power monitor support
eal: add power monitor for multiple events
power: remove thread safety from PMD power API's
power: support callbacks for multiple Rx queues
power: support monitoring multiple Rx queues
l3fwd-power: support multiqueue in PMD pmgmt modes
doc/guides/nics/features.rst | 10 +
doc/guides/prog_guide/power_man.rst | 68 +-
doc/guides/rel_notes/release_21_08.rst | 11 +
drivers/event/dlb2/dlb2.c | 17 +-
drivers/net/af_xdp/rte_eth_af_xdp.c | 34 +
drivers/net/i40e/i40e_rxtx.c | 20 +-
drivers/net/iavf/iavf_rxtx.c | 20 +-
drivers/net/ice/ice_rxtx.c | 20 +-
drivers/net/ixgbe/ixgbe_rxtx.c | 20 +-
drivers/net/mlx5/mlx5_rx.c | 17 +-
examples/l3fwd-power/main.c | 6 -
lib/eal/arm/rte_power_intrinsics.c | 11 +
lib/eal/include/generic/rte_cpuflags.h | 2 +
.../include/generic/rte_power_intrinsics.h | 68 +-
lib/eal/ppc/rte_power_intrinsics.c | 11 +
lib/eal/version.map | 3 +
lib/eal/x86/rte_cpuflags.c | 2 +
lib/eal/x86/rte_power_intrinsics.c | 90 ++-
lib/power/meson.build | 3 +
lib/power/rte_power_pmd_mgmt.c | 655 +++++++++++++-----
lib/power/rte_power_pmd_mgmt.h | 6 +
21 files changed, 832 insertions(+), 262 deletions(-)
--
2.25.1
More information about the dev
mailing list