On 2/10/21 8:36 AM, Numan Siddique wrote:
On Wed, Feb 10, 2021 at 1:37 AM Dumitru Ceara <dce...@redhat.com> wrote:

Scale tests have identified the lflow cache to be one of the main memory
consumers in ovn-controller.  This series refactors the lflow cache code
and adds configuration knobs to limit the size (in lines and/or memory)
of the cache.

Patches 1 and 6 fix issues with the already existing lflow cache code.
Even though patch 6 is a bug fix, it's easier to add it later in the
series because it uses the new lflow cache statistics (from patch 4)
to add a unit test that exercises the buggy scenario.

Changes in v3:
- Addressed Mark and Numan's comments (individual changes listed in
   each patch).
- Added acks where applicable.
Changes in v2:
- Added two bug fixes for already existing problems (patches 1 and 6).
- Added unit tests as requested by Mark.
- Added support for evicting "less important" entries when the cache
   limit is reached.
- Improved cache entries memory accounting.

Dumitru Ceara (10):
       lflow: Fix cache update when I-P engine aborts.
       lflow: Refactor convert_match_to_expr() to explicitly consume prereqs.
       lflow-cache: Move the lflow cache to its own module.
       lflow-cache: Add lflow-cache/show-stats command.
       lflow-cache: Add unit tests.
       lflow: Do not cache non-conjunctive flows that use address 
sets/portgroups.
       lflow-cache: Add coverage counters.
       lflow-cache: Reclaim heap memory after cache flush.
       lflow-cache: Make maximum number of cache entries configurable.
       lflow-cache: Make max cache memory usage configurable.


Thanks Dumitru for addressing the comments in v3.

I applied this series to master.

Thanks!

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to