[ovs-dev] [PATCH ovn v2 00/10] 3x performance improvement for ddlog with load balancer benchmark

Mark Michelson mmichels at redhat.com
Mon Sep 13 18:13:28 UTC 2021


Hi Ben, for the series:

Acked-by: Mark Michelson <mmichels at redhat.com>

I had a question on patch 1, but it's minor and otherwise shouldn't 
block an ACK.

On 9/7/21 6:45 PM, Ben Pfaff wrote:
> With and without these patches, I see the following performance when I
> run the load-balancer heavy benchmark.  The measurements include cold
> start with all the load balancers, then deleting the sctp load balancer
> and waiting for it to finish, then the same with the tcp load balancer,
> then the same with the udp load balancer.  The measurements only include
> ddlog time; there is additional overhead talking to the database, but
> that's a constant factor.
> 
> Without patches:   783 CPU seconds, 23.5 GB RAM, 13:06 elapsed time.
> With patches:      224 CPU seconds, 14.3 GB RAM,  3:45 elapsed time.
> 
> I am continuing to work on performance.
> 
> These patches are also available in:
> 	https://github.com/blp/ovs-reviews/tree/ovn-memory-8
> 
> v1->v2:
>    - Add two new patches.
>    - Rebase and rerun benchmarks (revisions reported above).
> 
> Ben Pfaff (9):
>    ovn-northd-ddlog: Make joins for ARP/ND flows slightly more efficient.
>    ovn-northd-ddlog: Derive load balancer IP addresses in new
>      LoadBalancer.
>    ovn-northd-ddlog: Reverse order of joins for connection tracking
>      flows.
>    ovn-northd-ddlog: Avoid re-parsing LB IP addresses and ports.
>    ovn-northd-ddlog: Simplify LBVIPWithStatus to include up_backends
>      string.
>    ovn-northd-ddlog: Avoid storing unused 'lbs' field in Router.
>    ovn-northd-ddlog: Intern strings before joining when possible.
>    ovn-northd-ddlog: Avoid map(ival) for ARP flows.
>    ovn-northd-ddlog: Avoid unnecessary joins for SwitchPortARPForwards.
> 
> Leonid Ryzhyk (1):
>    ovn-northd-ddlog: Intern all strings in OVSDB tables.
> 
>   configure.ac         |    2 +-
>   manpages.mk          |    1 -
>   northd/copp.dl       |   32 +-
>   northd/helpers.dl    |   14 +-
>   northd/ipam.dl       |   17 +-
>   northd/lrouter.dl    |  213 +++--
>   northd/lswitch.dl    |  177 ++--
>   northd/multicast.dl  |   44 +-
>   northd/ovn-nb.dlopts |    1 +
>   northd/ovn-sb.dlopts |    1 +
>   northd/ovn.dl        |    7 +
>   northd/ovn_northd.dl | 2021 ++++++++++++++++++++----------------------
>   northd/ovsdb2ddlog2c |    6 +-
>   tests/ovn-ic.at      |    8 +-
>   tests/ovn-northd.at  |   20 +-
>   tests/ovn.at         |    6 +-
>   16 files changed, 1280 insertions(+), 1290 deletions(-)
> 



More information about the dev mailing list