summaryrefslogtreecommitdiff
path: root/vswitchd
diff options
context:
space:
mode:
authorChristophe Fontaine <cfontain@redhat.com>2020-12-21 13:10:31 +0000
committerIlya Maximets <i.maximets@ovn.org>2021-01-15 18:51:27 +0100
commit62ab5594c20cc815592562af69abb5b8ebe85d55 (patch)
tree845f5adca888ad8a3b1f1037b50602442d91c695 /vswitchd
parente4db0b69e2d81d8d5ca1265fbfbd08a9b30a1a02 (diff)
downloadopenvswitch-62ab5594c20cc815592562af69abb5b8ebe85d55.tar.gz
dpif-netdev: Add parameters to configure PMD auto load balance.
Two important parts of how PMD auto load balance operates are how loaded a core needs to be and how much improvement is estimated before a PMD auto load balance can trigger. Previously they were hardcoded to 95% loaded and 25% variance improvement. These default values may not be suitable for all use cases and we may want to use a more (or less) aggressive rebalance, either on the pmd load threshold or on the minimum variance improvement threshold. The defaults are not changed, but "pmd-auto-lb-load-threshold" and "pmd-auto-lb-improvement-threshold" parameters are added to override the defaults. $ ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-load-threshold="70" $ ovs-vsctl set open_vswitch . other_config:pmd-auto-lb-improvement-threshold="20" Signed-off-by: Christophe Fontaine <cfontain@redhat.com> Co-Authored-by: Kevin Traynor <ktraynor@redhat.com> Signed-off-by: Kevin Traynor <ktraynor@redhat.com> Acked-by: David Marchand <david.marchand@redhat.com> Acked-by: Ian Stokes <ian.stokes@intel.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
Diffstat (limited to 'vswitchd')
-rw-r--r--vswitchd/vswitch.xml31
1 files changed, 29 insertions, 2 deletions
diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml
index fee54b0fa..5b2a174ab 100644
--- a/vswitchd/vswitch.xml
+++ b/vswitchd/vswitch.xml
@@ -653,8 +653,9 @@
type='{"type": "boolean"}'>
<p>
Configures PMD Auto Load Balancing that allows automatic assignment of
- RX queues to PMDs if any of PMDs is overloaded (i.e. processing cycles
- > 95%).
+ RX queues to PMDs if any of PMDs is overloaded (i.e. a processing
+ cycles >
+ <ref column="other_config" key="pmd-auto-lb-load-threshold"/>).
</p>
<p>
It uses current scheme of cycle based assignment of RX queues that
@@ -690,6 +691,32 @@
once in few hours or a day or a week.
</p>
</column>
+ <column name="other_config" key="pmd-auto-lb-load-threshold"
+ type='{"type": "integer", "minInteger": 0, "maxInteger": 100}'>
+ <p>
+ Specifies the minimum PMD thread load threshold (% of used cycles) of
+ any non-isolated PMD threads when a PMD Auto Load Balance may be
+ triggered.
+ </p>
+ <p>
+ The default value is <code>95%</code>.
+ </p>
+ </column>
+ <column name="other_config" key="pmd-auto-lb-improvement-threshold"
+ type='{"type": "integer", "minInteger": 0, "maxInteger": 100}'>
+ <p>
+ Specifies the minimum evaluated % improvement in load distribution
+ across the non-isolated PMD threads that will allow a PMD Auto Load
+ Balance to occur.
+ </p>
+ <p>
+ Note, setting this parameter to 0 will always allow an auto load
+ balance to occur regardless of estimated improvement or not.
+ </p>
+ <p>
+ The default value is <code>25%</code>.
+ </p>
+ </column>
<column name="other_config" key="userspace-tso-enable"
type='{"type": "boolean"}'>
<p>