diff options
author | Christophe Fontaine <cfontain@redhat.com> | 2020-12-21 13:10:31 +0000 |
---|---|---|
committer | Ilya Maximets <i.maximets@ovn.org> | 2021-01-15 18:51:27 +0100 |
commit | 62ab5594c20cc815592562af69abb5b8ebe85d55 (patch) | |
tree | 845f5adca888ad8a3b1f1037b50602442d91c695 /vswitchd | |
parent | e4db0b69e2d81d8d5ca1265fbfbd08a9b30a1a02 (diff) | |
download | openvswitch-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.xml | 31 |
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> |