Re-compute of 'northd' node in ovn-northd may take almost half of the
total processing time in case there is a big number of load balancers
applied to multiple switches/routers or if there are huge load balancer
groups applied to them.  The latter is a common case for ovn-kubernetes
clusters.

This patch set is a result of profiling ovn-northd in ovn-heater
density-heavy scenario with 500 fake nodes, which supposed to resemble
high scale ovn-kubernetes setups.

There are no functional changes, only mechanical optimizations that
allows to achieve exactly the same result by doing less work.

In total these patches allowed to spped up ovn-northd in the
aforementioned scenario by about 40%.  For exmaple, average northd
poll interval went down from 19.7 seconds to 10.2 seconds.  And the
maximum poll interval reduced from 31.7 to 14.9 seconds.

Ilya Maximets (4):
  northd: Optimize load balancer lookups for groups.
  northd: Add datapaths to load balancers in bulk.
  northd: Retrieve load balancer options only once.
  northd: Re-use IP sets created for load balancer groups.

 lib/lb.c           |  23 +++-
 lib/lb.h           |  17 ++-
 northd/en-northd.c |   2 +
 northd/northd.c    | 289 ++++++++++++++++++++++++++++++++-------------
 northd/northd.h    |  27 +++--
 5 files changed, 253 insertions(+), 105 deletions(-)

-- 
2.34.3

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to