On 2/10/21 8:36 AM, Numan Siddique wrote:
On Wed, Feb 10, 2021 at 1:37 AM Dumitru Ceara <[email protected]> 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 [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
