+.. _vpp_performance_tests_release_notes:
+
Release Notes
=============
#. VPP PERFORMANCE TESTS
- - **MRR Throughput**: MRR (Maximum Receive Rate) test code has now
- configurable trial duration and number of consecutive executions.
- Coverage of MRR tests has been extended across more test
- scenarios. MRR tests are used for continuous performance trending
- and for comparison between VPP releases.
-
- - **MLRsearch Throughput**: MLRsearch algorithm has been introduced
- for all NDR and PDR throughput tests. All tests that previously
- used binary search got converted to MLRsearch. Coverage of NDR/PDR
- tests has been extended across more test scenarios.
-
- - **L2patch Tests**: Tests measure performance of VPP L2patch, the
- fastest L2 forwarding path implemented in VPP, that cross-links
- RX and TX of two physical interfaces.
-
- - **2-Node Tests**: A new baseline set of 2-node tests covering base
- ip4, ip6, l2patch, l2bd, l2xc, running on new Xeon Skylake
- testbeds.
-
- - **Generated tests**: Simplified and unified test structure, semi-
- autogenerated by generator script. Test generator is currently
- able to create test combinations with various frame size and
- cores combinations. All existing test cases were converted to new
- format.
-
- - **Simultaneous Multi-Threading**: SMT-aware detection of server
- processor operation mode (HyperThreading enabled/disabled) with
- associated compute resource configuration including thread
- affinity, number of Rx queues and DPDK I/O mbufs. Tests are
- automatically tagged during execution to indicate executed thread
- configuration.
-
- - **Intel Xeon Skylake Support**: Support for 2-Node and 3-Node
- physical testbed topologies based on the new SuperMirco servers
- each with two Intel Xeon Skylake Platinum processors. Full
- Ansible playbooks refactor for quick server (re)installation and
- reference pointers of configuration.
+ - **Regressions with DPDK drivers**: Change from DPDK v21.08 to DPDK
+ v21.11 introduced regression across all tests using dpdk
+ drivers (with dpdk_plugin loaded). Compared to previous VPP
+ release performance drop varies in the range of -15% to -6%,
+ depending on test. It is related to updated MTU checks within
+ DPDK code and associated VPP code changes. See
+ `VPP v2202 release notes <https://s3-docs.fd.io/vpp/22.02/aboutvpp/releasenotes/v22.02.html>`_
+ and :ref:`vpp_known_issues`.
+
+ - **Number of CSIT 9000B frame tests failing**: tests with higher
+ encapsulation overhead are failing due to exceeding default
+ Ethernet Maximum Frame Size value that has been reduced by MTU
+ related VPP code changes. See
+ `VPP v2202 release notes <https://s3-docs.fd.io/vpp/22.02/aboutvpp/releasenotes/v22.02.html>`_
+ and :ref:`vpp_known_issues`.
+
+ - **Intel Xeon Ice Lake**: Performance test data for these platforms
+ is now provided by testbeds newly installed in FD.io CSIT labs.
+ For details about the physical setup see
+ :ref:`physical_testbeds_2n_icx` and
+ :ref:`physical_testbeds_3n_icx`.
+
+ - **Reduction of tests**: Removed certain test variations executed
+ iteratively for the report (as well as in daily and weekly
+ trending) due to physical testbeds overload.
+
+ - **RC2 coverage test data is used for 2n-icx test bed**: There is only
+ one 2n-icx test bed and the amount of tests is large (same as 2n-skx with 4
+ test beds), so we decided to use test data already available from RC2
+ testing.
+
+#. TEST FRAMEWORK
+
+ - **CSIT test environment** version has been updated to ver. 9, see
+ :ref:`test_environment_versioning`.
+
+ - **CSIT PAPI support**: Due to issues with PAPI performance, and
+ deprecation of VAT, VPP CLI is used in CSIT for many VPP scale
+ tests. See :ref:`vpp_known_issues`.
+
+ - **General Code Housekeeping**: Ongoing code optimizations and bug
+ fixes.
#. PRESENTATION AND ANALYTICS LAYER
- - **Performance trending**: Further improvements of continuous
- performance trending, anomaly detection and analysis.
+ - **Graphs improvements**: Updated Packet Latency graphs,
+ see :ref:`latency_methodology`.
+
+.. raw:: latex
-#. TEST FRAMEWORK OPTIMIZATIONS
+ \clearpage
- - **General Code Housekeeping**: Ongoing RF keywords optimizations,
- removal of redundant RF keywords.
+.. _vpp_known_issues:
Known Issues
------------
-List of known issues in |csit-release| for VPP performance tests:
-
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| # | JiraID | Issue Description |
-+===+=========================================+=================================================================================================================================+
-| 1 | `CSIT-570 | Sporadic (1 in 200) NDR discovery test failures on x520. DPDK reporting rx-errors, indicating L1 issue. |
-| | <https://jira.fd.io/browse/CSIT-570>`_ | Suspected issue with HW combination of X710-X520 in LF testbeds. Not observed outside of LF testbeds. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 2 | `VPP-1361 | High failure rate of api call sw_interface_set_flags [admin-up|link-up]. |
-| | <https://jira.fd.io/browse/VPP-1361>`_ | Failure rate: 30-40% of tests failing due to interfaces not in link-up state after API call sw_interface_set_flags. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 3 | `CSIT-1234 | VPP IPSecHW scale interface mode 1core, low NDR and PDR 64B throughput in 3n-hsw testbeds, in CSIT-18.07 vs. CSIT-18.04. |
-| | <https://jira.fd.io/browse/CSIT-1234>`_ | ip4ipsecscale1000tnl-ip4base-int 1core CSIT-18.07/18.04 relative change: NDR -31%, PDR -32%, MRR -38%. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 4 | `CSIT-1242 | VPP xl710 ip4base test 1core, low NDR and PDR 64B throughput in 3n-hsw testbeds, in CSIT-18.07 vs. CSIT-18.04. |
-| | <https://jira.fd.io/browse/CSIT-1242>`_ | xl710 ip4base 1core CSIT-18.07/18.04 relative change: NDR -29%, high stdev. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 5 | `CSIT-1243 | VPP nat44 base test 2core, low NDR and PDR 64B throughput in 3n-skx testbeds, compared to 3n-hsw testbeds. |
-| | <https://jira.fd.io/browse/CSIT-1243>`_ | ip4base-nat44 2core 3n-skx/3n-hsw relative change: NDR -19%, PDR -22%. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 6 | `CSIT-1244 | VPP lispip4 base test 2core, low NDR and PDR 64B throughput in 3n-skx testbeds, compared to 3n-hsw testbeds. |
-| | <https://jira.fd.io/browse/CSIT-1244>`_ | ip4lispip4-ip4base 2core 3n-skx/3n-hsw relative change: NDR -11%, PDR -18%. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 7 | `CSIT-1245 | VPP srv6proxy-stat and srv6proxy-masq, much higher NDR and PDR 78B throughput in 3n-hsw testbeds, in CSIT-18.07 vs. CSIT-18.04. |
-| | <https://jira.fd.io/browse/CSIT-1245>`_ | Due to wrong test suite configuration in dynamic-proxy mode. Artefact of suite code refactoring. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 8 | `CSIT-1246 | Ligato K8S orchestrated tests are failing due to incompatibility of the latest released Ligato vpp-agent with VPP-18.07. |
-| | <https://jira.fd.io/browse/CSIT-1246>`_ | Past vpp-agent releases are not compatible either. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 9 | `CSIT-1253 | VPP lbdpdk link bonding tests failing due to interfaces not coming up. |
-| | <https://jira.fd.io/browse/CSIT-1253>`_ | VPP lbdpdk link bonding tests relying on DPDK functionality for bonding fail. |
-+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+New
+___
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 1 | `CSIT-1799 | All NAT44-ED 16M scale tests fail while setting NAT44 address range. |
+| | <https://jira.fd.io/browse/CSIT-1799>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `CSIT-1800 | All Geneve L3 mode scale tests (1024 tunnels) are failing. |
+| | <https://jira.fd.io/browse/CSIT-1800>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 3 | `CSIT-1801 | 9000B payload frames not forwarded over tunnels due to violating supported Max Frame Size (VxLAN, LISP, |
+| | <https://jira.fd.io/browse/CSIT-1801>`_ | SRv6). |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 4 | `CSIT-1808 | All tests with 9000B payload frames not forwarded over memif interfaces. |
+| | <https://jira.fd.io/browse/CSIT-1808>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 5 | `CSIT-1809 | All tests with 9000B payload frames not forwarded over vhostuser interfaces. |
+| | <https://jira.fd.io/browse/CSIT-1809>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 6 | `CSIT-1802 | AF-XDP - NDR tests failing from time to time. |
+| | <https://jira.fd.io/browse/CSIT-1802>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 7 | `CSIT-1803 | 3n-icx testbeds (Icelake): all IMIX aes128cbc-hmac512sha tests are failing due to excessive packet loss. |
+| | <https://jira.fd.io/browse/CSIT-1803>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 8 | `CSIT-1804 | 3n-tsh testbed (Taishan): NDR tests failing from time to time. |
+| | <https://jira.fd.io/browse/CSIT-1804>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 9 | `CSIT-1805 | 3n-skx testbeds (Skylake): all hoststack quic vppecho scale tests are failing. |
+| | <https://jira.fd.io/browse/CSIT-1805>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 10 | `CSIT-1810 | DPDK - performance regression with DPDK driver when Max Frame Size is set to less than 2023. |
+| | <https://jira.fd.io/browse/CSIT-1810>`_ | |
+| +-----------------------------------------+ |
+| | `VPP-1876 | Worse performance with DPDK driver when MTU is set to 2022 or less. |
+| | <https://jira.fd.io/browse/VPP-1876>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 11 | `CSIT-1811 | All 9000B NAT44DET 64k 1m scale tests fail due to bps rate set to high on TRex. |
+| | <https://jira.fd.io/browse/CSIT-1811>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 12 | `CSIT-1812 | All IMIX NAT44DET 4m 16m scale tests fail due to not creating required session count. |
+| | <https://jira.fd.io/browse/CSIT-1812>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+
+Previous
+________
+
+Issues reported in previous releases which still affect the current results.
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 1 | `CSIT-1782 | Multicore AVF tests are failing when trying to create interface. |
+| | <https://jira.fd.io/browse/CSIT-1782>`_ | Frequency is reduced by CSIT workaround, but occasional failures do still happen. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `CSIT-1671 | All CSIT scale tests can not use PAPI due to much slower performance compared to VAT/CLI (it takes much |
+| | <https://jira.fd.io/browse/CSIT-1671>`_ | longer to program VPP). This needs to be addressed on the PAPI side. |
+| +-----------------------------------------+ Currently, the time critical code uses VAT running large files with exec statements and CLI commands. |
+| | `VPP-1763 | Still, we needed to reduce the number of scale tests run to keep overall duration reasonable. |
+| | <https://jira.fd.io/browse/VPP-1763>`_ | More improvements needed to achieve sufficient configuration speed. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 3 | `CSIT-1785 | NAT44ED tests failing to establish all TCP sessions. |
+| | <https://jira.fd.io/browse/CSIT-1785>`_ | At least for max scale, in allotted time (limited by session 500s timeout) due to worse |
+| +-----------------------------------------+ slow path performance than previously measured and calibrated for. |
+| | `VPP-1972 | CSIT removed the max scale NAT tests to avoid this issue. |
+| | <https://jira.fd.io/browse/VPP-1972>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 4 | `CSIT-1791 | Performance regression in RDMA tests, due to CSIT environment changes. |
+| | <https://jira.fd.io/browse/CSIT-1791>`_ | Two symptoms: 1. 10-20% regression across most tests. 2. DUT performance cap just below 38 Mpps. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+Fixed
+_____
+
+Issues reported in previous releases which were fixed in this release:
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 1 | `CSIT-1789 | IPSEC SW async scheduler tests show bad behavior. |
+| | <https://jira.fd.io/browse/CSIT-1789>`_ | VPP code is not behaving correctly when crypto workers are the bottleneck. |
+| +-----------------------------------------+ |
+| | `VPP-1998 | |
+| | <https://jira.fd.io/browse/VPP-1998>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+Root Cause Analysis for Performance Changes
+-------------------------------------------
+
+List of RCAs in |csit-release| for VPP performance changes:
+
++----+-----------------------------------------+--------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+==============================================================+
+| 1 | `CSIT-1814 | rls2202 regression: NAT44ED CPS larger scales. |
+| | <https://jira.fd.io/browse/CSIT-1814>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 2 | `CSIT-1815 | rls2202 regression: l2bdbasemaclrn around 2021-11-11. |
+| | <https://jira.fd.io/browse/CSIT-1815>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 3 | `CSIT-1816 | rls2202 regression: l2-input. |
+| | <https://jira.fd.io/browse/CSIT-1816>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 4 | `CSIT-1820 | rls2202 regression: tx2 ip6base at dpdk upgrade. |
+| | <https://jira.fd.io/browse/CSIT-1820>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 5 | `CSIT-1821 | rls2202 regression: tx2 ip6base before dpdk upgrade. |
+| | <https://jira.fd.io/browse/CSIT-1821>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 6 | `CSIT-1822 | rls2202 regression: avf-ip4base around 2022-01-06. |
+| | <https://jira.fd.io/browse/CSIT-1822>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 7 | `CSIT-1823 | rls2202 regression: vxlan-l2xcbase on tsh around 2022-01-07. |
+| | <https://jira.fd.io/browse/CSIT-1823>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+
+| 8 | `CSIT-1824 | rls2202 regression: SRv6. |
+| | <https://jira.fd.io/browse/CSIT-1824>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+