[ovs-dev] [PATCH v2 00/12] Improve performance of OVS-DPDK classifier.

Daniele Di Proietto diproiettod at ovn.org
Fri Oct 14 02:19:19 UTC 2016


Thanks for v2.

I had a few extra comments on patch one

Sorry for nitpicking on this and sorry I wasn't clear enough on the signoff
requirements.
>From CONTRIBUTING.md:

    Co-authored-by: Author Name <author.name at email.address...>

        Git can only record a single person as the author of a given
        patch.  In the rare event that a patch has multiple authors,
        one must be given the credit in Git and the others must be
        credited via Co-authored-by: tags.  (All co-authors must also
        sign off.)

There should be one signoff for the main author, plus one extra for
each coauthor. I always mix this up myself, but it would help if you
could send another version with the amended tags.

Daniele

2016-10-13 2:58 GMT-07:00 Bhanuprakash Bodireddy <
bhanuprakash.bodireddy at intel.com>:

> This patch series is aimed at improving the performance of OVS-DPDK
> dpcls.
>
> With few thousand flows installed, the EMC becomes inefficient due
> to thrashing and the bottleneck moves to the dpcls. In EMC disabled
> case, through VTune we found that significant performance degradation
> is due to LLC thrashing, memory latency, machine clears and expensive
> hash computation.
>
> This first patch-set improves the dpcls performance by 15% (+1 Mpps)
> when EMC is disabled and OVS-DPDK built with CFLAGS="-O2 -g".
>
> Bhanuprakash Bodireddy (12):
>   dpcls: Use 32 packet batches for lookups.
>         Comment: ~120k performance throughput improvement.
>
>   flow: Add comments to mf_get_next_in_map().
>         Comment: Add comments to the function.
>
>   flow: Skip invoking expensive count_1bits() with zero input.
>         Comment: ~630k performance throughput improvement.
>
>   hash: Skip invoking mhash_add__() with zero input.
>         Comment: ~150k performance throughput improvement.
>
>   dpif-netdev: Add comments to dp_netdev_input__().
>         Comment: Add comments to the function.
>
>   cmap: Remove prefetching in cmap_find_batch().
>         Comment: ~39k performance throughput improvement.
>
>   dpif-netdev: Cache align netdev_flow_keys.
>         Comment: ~170k performance throughput improvement in EMC enabled
> case.
>
>   dpif-netdev: Reorder elements in dp_netdev_port structure.
>   dpif: Reorder elements in dpif_upcall structure.
>   ovsdb: Reorder elements in ovsdb_table_schema structure.
>   netlink-socket: Reorder elements in nl_dump structure.
>   timeval: Reorder elements in clock structure.
>         Comment: Reorder memeber variables of the structures to reduce
>                  pad bytes and there by the memory footprint.
>
>  lib/cmap.c           |   8 +---
>  lib/dpif-netdev.c    | 123 ++++++++++++++++++++++++------
> ---------------------
>  lib/dpif.h           |   5 ++-
>  lib/flow.h           |  47 +++++++++++++++-----
>  lib/hash.h           |   5 +++
>  lib/netlink-socket.h |   6 +--
>  lib/timeval.c        |   4 +-
>  ovsdb/table.h        |   4 +-
>  8 files changed, 113 insertions(+), 89 deletions(-)
>
> --
> 2.4.11
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>



More information about the dev mailing list