mbox series

[ovs-dev,v10,0/4] MFEX Optimizations IPv6 + Hashing Optimizations

Message ID 20220531140130.2235821-1-kumar.amber@intel.com
Headers show
Series MFEX Optimizations IPv6 + Hashing Optimizations | expand

Message

Kumar Amber May 31, 2022, 2:01 p.m. UTC
The patchset introuduces IPv6 optimized MFEX profiles
with AVX512 which can deliver upto 20% to 30% gain in
performance over the existing scalar data-path.

Hashing Optimization are also included which can further
improve performance by approximately 10%.

The patch also removes the magic numbers for MF bits, packet offsets
and packet lenghts.

---
v10:
- Reabse onto Cian Partial AVX512 build patch.
v9:
- Fix Ubsan un-alinged memory load.
v8:
- Rename packet offsets defines to aling with packet struct.
v7:
- Remove magic numbers from AVX512 Profiles.
v5:
- Add Ipv6 and TCP packet length checks.
v4:
- rebase to master.
- use static key lenghts for different packet types.
v3:
- rebase to master.
v2:
- fix the CI build.
- fix check-patch for co-author.
---

Kumar Amber (4):
  mfex_avx512: Calculate pkt offsets at compile time.
  mfex_avx512: Calculate miniflow_bits at compile time.
  dpif-netdev/mfex: Add AVX512 ipv6 traffic profiles
  dpif-netdev/mfex: Add ipv6 profile based hashing.

 NEWS                              |   5 +
 acinclude.m4                      |   1 +
 lib/automake.mk                   |   5 +-
 lib/dp-packet.h                   |  43 ++++
 lib/dpif-netdev-extract-avx512.c  | 349 ++++++++++++++++++++++++++++--
 lib/dpif-netdev-private-extract.c |  51 ++++-
 lib/dpif-netdev-private-extract.h |  20 ++
 lib/flow.c                        |   4 +
 8 files changed, 463 insertions(+), 15 deletions(-)