[ovs-dev] [ovs-dev, v2] netdev-dpdk: dfc_process optimization by

Ilya Maximets i.maximets at samsung.com
Tue Mar 12 13:31:02 UTC 2019


Hi.

Thanks for working on this.
Not a full review, just a few notes about formatting.

1. Looks like your subject line was accidentally cropped.
2. This change is local to generic parts of 'dpif-netdev', so, the "area" in
   a subject line should be 'dpif-netdev'. There is nothing DPDK specific here.

On 11.03.2019 14:44, Yanqin Wei wrote:
> It is observed that the throughput of multi-flow is worse than single-flow
> in the EMC NIC to NIC cases. It is because CPU cache-miss increasing in EMC
> lookup. Each flow need load at least one EMC entry to CPU cache(several
> cache lines) and compare it with packet miniflow.
> This patch improve it by prefetching EMC entry in advance. Hash value can
> be obtained from dpdk rss hash, so this step can be advanced ahead of
> miniflow_extract() and prefetch EMC entry there. The prefetching size is
> defined as ROUND_UP(128,CACHE_LINE_SIZE), which can cover majority traffic
> including TCP/UDP protocol and need 2 cache lines in most modern CPU.
> Performance test was run in some arm platform. 1000/10000 flows NIC2NIC
> test achieved around 10% throughput improvement in thunderX2(aarch64
> platform).
> 
> Signed-off-by: Yanqin Wei <Yanqin.Wei at arm.com>
> Reviewed-by: Gavin Hu <Gavin.Hu at arm.com>
> ---
>  lib/dpif-netdev.c | 80 ++++++++++++++++++++++++++++++++++++-------------------
>  1 file changed, 52 insertions(+), 28 deletions(-)
>  mode change 100644 => 100755 lib/dpif-netdev.c
> 
> diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c
> old mode 100644
> new mode 100755

3. Please, don't change the file mode.

Best regards, Ilya Maximets.


More information about the dev mailing list