On 7 Jul 2022, at 17:38, Emma Finn wrote:
> This patchset introduces actions infrastructure changes which allows > the user to choose between different action implementations based on > CPU ISA by using different commands. The infrastructure also > provides a way to check the correctness of the ISA optimized action > version against the scalar version. > > This series also introduces optimized versions of the following > actions: > - push_vlan > - pop_vlan > - set_masked eth > - set_masked ipv4 > > Below is a table indicating some relative performance benefits for > these actions. > +-----------------------------------------------+-------------------+-----------------+ > | Actions | Scalar with series| AVX > with series | > +-----------------------------------------------+-------------------+-----------------+ > | mod_dl_dst | 1.01x | 1.13x > | > +-----------------------------------------------+-------------------+-----------------+ > | push_vlan | 1.01x | 1.10x > | > +-----------------------------------------------+-------------------+-----------------+ > | strip_vlan | 1.01x | 1.11x > | > +-----------------------------------------------+-------------------+-----------------+ > | mod_ipv4 1 x field | 1.01x | 1.02x > | > +-----------------------------------------------+-------------------+-----------------+ > | mod_ipv4 4 x fields | 1.01x | 1.21x > | > +-----------------------------------------------+-------------------+-----------------+ > | strip_vlan + mod_dl_dst + mod_ipv4 4 x fields | 1.01x | 1.36x > | > +-----------------------------------------------+-------------------+-----------------+ Hi Emma, Thanks for the v8! I’m planning to review this next week, however, there are some ongoing escalations and people that are on PTO, so no promise ;) Also, I noticed a build failure by the robot you might want to investigate in the meantime. Cheers, Eelco > --- > v8: > - First patch changing unit tests has been removed from series. > - AVX checksum implementation has been reworked. > - Dependency on userspace datapath has been resolved. > --- > v7: > - Fix review comments from Eelco. > --- > v6: > - Rebase to master > - Add ISA implementation of set_masked eth and ipv4 actions > - Fix incorrect checksums in input packets for ofproto-dpif unit > tests > --- > v5: > - Rebase to master > - Minor change to variable names > - Added Tags from Harry. > --- > v4: > - Rebase to master > - Add ISA implementation of push_vlan action > --- > v3: > - Refactored to fix unit test failures > - Removed some sign-off on commits > --- > v2: > - Fix the CI build issues > --- > > > Emma Finn (9): > odp-execute: Add function pointers to odp-execute for different action > implementations. > odp-execute: Add function pointer for pop_vlan action. > odp-execute: Add auto validation function for actions. > odp-execute: Add command to switch action implementation. > odp-execute: Add ISA implementation of actions. > odp-execute: Add ISA implementation of pop_vlan action. > odp-execute: Add ISA implementation of push_vlan action. > odp-execute: Add ISA implementation of set_masked ETH > odp-execute: Add ISA implementation of set_masked IPv4 action > > Kumar Amber (1): > dpif-netdev: Add configure option to enable actions autovalidator at > build time. > > Documentation/ref/ovs-actions.7.rst | 26 ++ > Documentation/topics/testing.rst | 24 +- > NEWS | 7 + > acinclude.m4 | 21 ++ > configure.ac | 1 + > lib/automake.mk | 9 +- > lib/cpu.c | 1 + > lib/cpu.h | 1 + > lib/dp-packet.c | 24 ++ > lib/dp-packet.h | 4 + > lib/dpif-netdev.c | 5 + > lib/odp-execute-avx512.c | 536 ++++++++++++++++++++++++++++ > lib/odp-execute-private.c | 274 ++++++++++++++ > lib/odp-execute-private.h | 100 ++++++ > lib/odp-execute-unixctl.man | 10 + > lib/odp-execute.c | 202 +++++++++-- > lib/odp-execute.h | 10 + > tests/pmd.at | 39 ++ > vswitchd/ovs-vswitchd.8.in | 1 + > 19 files changed, 1248 insertions(+), 47 deletions(-) > create mode 100644 lib/odp-execute-avx512.c > create mode 100644 lib/odp-execute-private.c > create mode 100644 lib/odp-execute-private.h > create mode 100644 lib/odp-execute-unixctl.man > > -- > 2.32.0 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
