From: Cian Ferriter <cian.ferri...@intel.com> This section details how two new commands can be used to list and select the different dpif implementations. It also details how a non default dpif implementation can be tested with the OVS unit test suite.
Add NEWS updates for the dpif-netdev.c refactor and the new dpif implementations/commands. Signed-off-by: Cian Ferriter <cian.ferri...@intel.com> --- Documentation/topics/dpdk/bridge.rst | 37 ++++++++++++++++++++++++++++ NEWS | 5 ++++ 2 files changed, 42 insertions(+) diff --git a/Documentation/topics/dpdk/bridge.rst b/Documentation/topics/dpdk/bridge.rst index 526d5c959..ca90d7bdb 100644 --- a/Documentation/topics/dpdk/bridge.rst +++ b/Documentation/topics/dpdk/bridge.rst @@ -214,3 +214,40 @@ implementation :: Compile OVS in debug mode to have `ovs_assert` statements error out if there is a mis-match in the DPCLS lookup implementation. + +Datapath Interface Performance +------------------------------ + +The datapath interface (DPIF) or dp_netdev_input() is responsible for taking +packets through the major components of the userspace datapath; such as +miniflow_extract, EMC, SMC and DPCLS lookups, and a lot of the performance +stats associated with the datapath. + +Just like with the SIMD DPCLS work above, SIMD can be applied to the DPIF to +improve performance. + +OVS provides multiple implementations of the DPIF. These can be listed with the +following command :: + + $ ovs-appctl dpif-netdev/dpif-get + Available DPIF implementations: + dpif_scalar + dpif_avx512 + +By default, dpif_scalar is used. The DPIF implementation can be selected by +name :: + + $ ovs-appctl dpif-netdev/dpif-set dpif_avx512 + DPIF implementation set to dpif_avx512. + + $ ovs-appctl dpif-netdev/dpif-set dpif_scalar + DPIF implementation set to dpif_scalar. + +Running Unit Tests with AVX512 DPIF +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Since the AVX512 DPIF is disabled by default, a compile time option is +available in order to test it with the OVS unit test suite. When building with +a CPU that supports AVX512, use the following configure option :: + + $ ./configure --enable-dpif-default-avx512 diff --git a/NEWS b/NEWS index 1a39cc661..30a3d8dbb 100644 --- a/NEWS +++ b/NEWS @@ -28,6 +28,11 @@ Post-v2.14.0 OpenFlow bundle actions. - Support for GitHub Actions based continuous integration builds has been added. + - Userspace datapath: + * Refactor lib/dpif-netdev.c to multiple header files. + * Add avx512 implementation of dpif which can process non recirculated + packets. It supports partial HWOL, EMC, SMC and DPCLS lookups. + * Add commands to get and set the dpif implementations. v2.14.0 - 17 Aug 2020 -- 2.25.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev