[ovs-dev] [PATCH v14 00/11] MFEX Infrastructure + Optimizations

Eelco Chaudron echaudro at redhat.com
Mon Jul 19 09:06:39 UTC 2021



On 16 Jul 2021, at 13:27, Stokes, Ian wrote:

>> v14:
>> - fixed format and xmas order in patch 6
>> - added additonal negative test-cases for mfex commands
>> - added core mask for configuration test case
>
> Hi all, thanks for all the work reviewing/testing. I've made the required updates for patches 3, 6 and 7 (mostly coding style and log messages).
>
> I've pushed this to master.

Thanks for making these final adjustments! The commit looks good.

>
> Thanks
> Ian
>
>> v13:
>> - add Acks from Flavio
>> - fixed atomic set and static var in study
>> - shotened null check in first patch
>> - added improvements to set command as per discussion
>> - added test-case to test for set commands both negative and positive
>> v12:
>> - re-work the set command to sweep method
>> - changes skip for unit-test to true from not-available
>> - added acks from Eelco
>> - minor doc fixed and typos
>> v11:
>> - reworked set command in alingment with Eelco and Harry
>> - added Acks from Eelco.
>> - added skip to unit test if other implementations not available
>> - minor typos and fixes
>> - clang build fixes
>> - removed patch whith Scalar DPIF, will send separately
>> v10 update:
>> - re-worked the default implementation
>> - fix comments from Flavio and Eelco
>> - Include Acks from Eelco in study
>> v9 update:
>> - Include review comments from Flavio
>> - Rebase onto Master
>> - Include Acks from Flavio
>> v8 updates:
>> - Include documentation on AVX512 MFEX as per Eelco's suggestion on list
>> v7 updates:
>> - Rebase onto DPIF v15
>> - Changed commands to get and set MFEX
>> - Fixed comments from Flavio, Eelco
>> - Segrated addition of MFEX options to seaprate patch 12 for Scalar DPIF
>> - Removed sleep from auto-validator and added frame counter check
>> - Documentation updates
>> - Minor bug fixes
>> v6 updates:
>> - Fix non-ssl build
>> v5 updates:
>> - reabse onto latest DPIF v14
>> - use Enum for mfex impls
>> - add pmd core id set paramter in set command
>> - get command modified to display the pmd thread for individual mfex functions
>> - resolved comments from Eelco, Ian, Flavio
>> - Use Atomic to get and set miniflow implementations
>> - removed and reduced sleep in unit tests
>> - fixed scalar miniflow perf degradation
>> v4 updates:
>> - rebase on to latest DPIF v13
>> - fix fuzzy.py script with random mac/ip
>> v3 updates:
>> - rebase on to latest DPIF v12
>> - add additonal AVX512 traffic profiles for tcp and vlan
>> - add new command line for study function to add packet count
>> - add unit tests for fuzzy testing and auto-validation of mfex
>> - add mfex option hit stats to perf-show command
>> v2 updates:
>> - rebase on to latest DPIF v11
>> This patchset introduces miniflow extract Infrastructure changes
>> which allows user to choose different type of ISA based optimized
>> miniflow extract variants which can be user choosen or set based on
>> packets studies automatically by OVS using different commands.
>> The Infrastructure also provides a way to check the correctness of
>> different ISA optimized miniflow extract variants against the scalar
>> version.
>>
>> Harry van Haaren (4):
>>   dpif/stats: Add miniflow extract opt hits counter
>>   dpdk: Add additional CPU ISA detection strings
>>   dpif-netdev/mfex: Add AVX512 based optimized miniflow extract
>>   dpif-netdev/mfex: Add more AVX512 traffic profiles
>>
>> Kumar Amber (7):
>>   dpif-netdev: Add command line and function pointer for miniflow
>>     extract
>>   dpif-netdev: Add auto validation function for miniflow extract
>>   dpif-netdev: Add study function to select the best mfex function
>>   docs/dpdk/bridge: Add miniflow extract section.
>>   dpif-netdev: Add configure to enable autovalidator at build time.
>>   dpif-netdev: Add packet count and core id paramters for study
>>   test/sytem-dpdk: Add unit test for mfex autovalidator
>>
>>  Documentation/topics/dpdk/bridge.rst | 146 +++++++
>>  NEWS                                 |  11 +
>>  acinclude.m4                         |  16 +
>>  configure.ac                         |   1 +
>>  lib/automake.mk                      |   4 +
>>  lib/dpdk.c                           |   2 +
>>  lib/dpif-netdev-avx512.c             |  34 +-
>>  lib/dpif-netdev-extract-avx512.c     | 630 +++++++++++++++++++++++++++
>>  lib/dpif-netdev-extract-study.c      | 158 +++++++
>>  lib/dpif-netdev-perf.c               |   3 +
>>  lib/dpif-netdev-perf.h               |   1 +
>>  lib/dpif-netdev-private-extract.c    | 371 ++++++++++++++++
>>  lib/dpif-netdev-private-extract.h    | 203 +++++++++
>>  lib/dpif-netdev-private-thread.h     |   8 +
>>  lib/dpif-netdev-unixctl.man          |   4 +
>>  lib/dpif-netdev.c                    | 238 +++++++++-
>>  tests/.gitignore                     |   1 +
>>  tests/automake.mk                    |   6 +
>>  tests/mfex_fuzzy.py                  |  33 ++
>>  tests/pcap/mfex_test.pcap            | Bin 0 -> 416 bytes
>>  tests/pmd.at                         |   6 +-
>>  tests/system-dpdk.at                 | 160 +++++++
>>  22 files changed, 2024 insertions(+), 12 deletions(-)
>>  create mode 100644 lib/dpif-netdev-extract-avx512.c
>>  create mode 100644 lib/dpif-netdev-extract-study.c
>>  create mode 100644 lib/dpif-netdev-private-extract.c
>>  create mode 100644 lib/dpif-netdev-private-extract.h
>>  create mode 100755 tests/mfex_fuzzy.py
>>  create mode 100644 tests/pcap/mfex_test.pcap
>>
>> --
>> 2.25.1



More information about the dev mailing list