[Public]

Snipped

> >
> > A number of libs and drivers had special optimized AVX2 and AVX512
> > code paths for performance reasons, and these tended to have
> > copy-pasted logic to build those files. Centralise that logic in the
> > main drivers/ and lib/ meson.build files to avoid duplication.
> >
> > v5: fix RTE_ARCH_X86 macro, which broke crc library
> > v4: rebase on latest main branch
> >     minor fixes following feedback
> >     limit use of -march=skylake-avx512 to when we don't already have a
> >       -march flag supporting AVX512.
> > v3: add patch for event/dlb2 AVX512 handling.
> >     add common code for libraries as well as drivers.
> > v2: add patch 4 to remove use of unnecessary CC_AVX2_SUPPORT flag
> >
> >
> > Bruce Richardson (11):
> >   drivers: add generalized AVX build handling
> >   net/intel: use common AVX build code
> >   drivers/net: build use common AVX handling
> >   drivers/net: remove AVX2 build-time define
> >   event/dlb2: build using common AVX handling
> >   lib: add generalized AVX build handling
> >   acl: use common AVX build handling
> >   fib: use common AVX build handling
> >   net: simplify build-time logic for x86
> >   net: use common AVX512 build code
> >   member: use common AVX512 build support
> >
> >  drivers/event/dlb2/dlb2_sse.c         |  4 ++
> >  drivers/event/dlb2/meson.build        | 16 +-------
> >  drivers/meson.build                   | 30 ++++++++++++++
> >  drivers/net/bnxt/bnxt_ethdev.c        |  2 -
> >  drivers/net/bnxt/meson.build          | 10 +----
> >  drivers/net/enic/meson.build          | 10 +----
> >  drivers/net/intel/i40e/meson.build    | 26 +-----------
> >  drivers/net/intel/iavf/meson.build    | 25 +-----------
> >  drivers/net/intel/ice/meson.build     | 25 +-----------
> >  drivers/net/intel/idpf/meson.build    | 25 +-----------
> >  drivers/net/nfp/meson.build           | 10 +----
> >  drivers/net/octeon_ep/meson.build     | 13 +-----
> >  drivers/net/octeon_ep/otx_ep_ethdev.c |  4 --
> >  drivers/net/virtio/meson.build        |  9 +----
> >  lib/acl/meson.build                   | 54 ++-----------------------
> >  lib/fib/dir24_8.c                     |  6 +--
> >  lib/fib/meson.build                   | 18 +--------
> >  lib/fib/trie.c                        |  6 +--
> >  lib/member/meson.build                | 46 ++++-----------------
> >  lib/meson.build                       | 34 +++++++++++++++-
> >  lib/net/meson.build                   | 58 +++------------------------
> >  lib/net/rte_net_crc.c                 | 16 ++++----
> >  22 files changed, 114 insertions(+), 333 deletions(-)
>
> Thank you Bruce, this series lgtm.

Series-Reviewed-by: vipin.vargh...@amd.com
Series-Tested-by: thiyagaraja...@amd.com

Tested on:
SUT 1 & 2: AMD EPYC 8534P 64-Core Processor
CPU : AVX-512 Enabled, Turbo Boost disabled and NPS-1
NIC: Intel E810-CQDA2
DPDK version: v25.03
Traffic generator: Pktgen-23.06.1.
Number of Ports: 2
Total Speed: 200G.
Patch apply: 11 patches.

Testcase: testpmd io & l3fwd
Test scenario: 2C2T–2 Ports–1Rx1Tx scenario(64B and 128B buffer sizes).
Sumamry: On comparing the results with and without patch apply for both 
testpmd-io and l3fwd, the delta was less than 1%.




>
>
> --
> David Marchand

Reply via email to