tripleo-heat-templates/releasenotes
Robin Jarry 94032b2d86 Add support for OVS PMD load based sleeping
PMD threads constantly poll Rx queues which are assigned to them. In
order to reduce the CPU cycles they use, they can sleep for small
periods of time when there is no load or very-low load on all the Rx
queues they poll.

This can be enabled by setting the max requested sleep time (in
microseconds) for any PMD thread:

 $ ovs-vsctl set open_vswitch . other_config:pmd-maxsleep=50

With a non-zero max value a PMD may request to sleep by an incrementing
amount of time up to the maximum time. If at any point the threshold of
at least half a batch of packets (i.e. 16) is received from an Rx queue
that the PMD is polling is met, the requested sleep time will be reset
to 0. At that point no sleeps will occur until the no/low load
conditions return.

Sleeping in a PMD thread will mean there is a period of time when the
PMD thread will not process packets. Sleep times requested are not
guaranteed and can differ significantly depending on system
configuration. The actual time not processing packets will be determined
by the sleep and processor wake-up times and should be tested with each
system configuration.

Depends-on: https://review.opendev.org/c/openstack/tripleo-ansible/+/893341
Cc: Christophe Fontaine <cfontain@redhat.com>
Change-Id: I4447ed85ba246db1ad46c9715f6e8ee59376b1ea
Signed-off-by: Robin Jarry <rjarry@redhat.com>
2023-10-31 12:49:05 +00:00
..
notes Add support for OVS PMD load based sleeping 2023-10-31 12:49:05 +00:00
releasenotes/notes Fix 'Ensure DNF modules have the right stream' 2022-06-23 09:43:48 +02:00
source Update master for stable/victoria 2020-10-30 15:51:39 +00:00