+.. _vpp_performance_tests_release_notes:
+
Release Notes
=============
#. VPP PERFORMANCE TESTS
- - **BMRR Throughput**: MRR (Maximum Receive Rate) test code has been
- updated with a configurable burst MRR parameters: trial duration
- and number of trials in a single burst. Enables a new Burst MRR
- (BMRR for short) methodology for more precise performance
- trending. See updated :ref:`performance_test_methodology` section
- for more details.
-
- - **2n-skx tests**: Added performamce tests for 2n-skx (2-Node Xeon
- Skylake) testbeds: focus on baseline and scale tests, including
- VM vhost and Container memif tests.
-
- - **3n-skx tests**: Added performamce tests for 3n-skx (3-Node Xeon
- Skylake) testbeds: VM vhost and Container memif tests.
-
- - **VXLAN Scale Tests**: Added performamce tests for VXLAN scale with
- dot1q and VPP L2BD.
-
- - **AVF Driver Tests**: Added performamce tests for i40e AVF driver
- on VPP, no DPDK required.
-
- - **QAT**: Fixed reoccuring issues with QAT crypto accelerator cards.
-
- - **VM Vhost Virtio Params Combinations**: Added performance tests
- for VM vhost with different virtio parameters combinations:
- indirect buffers, mergeable buffers.
-
- - **K8s/Ligato in Trending**: Added K8s/Ligato Container memif tests
- to daily trending.
+ - **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
- - **Experimental Soak Tests**: Added performamce soak tests framework
- code for extended time duration tests and throughput discovery
- at given PLR and at give total test time e.g. minutes, hours,
- days, weeks, months, years. See updated
- :ref:`performance_test_methodology` section for more details.
+ - **CSIT test environment** version has been updated to ver. 9, see
+ :ref:`test_environment_versioning`.
- - **Trending Tests BMRR**: Used new Burst MRR (BMRR) tests for daily
- trending.
+ - **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`.
- - **Per VPP Patch Performance Checks**: Per VPP gerrit patch vs.
- parent performance tests, anomaly detection and no verify voting
- (-1/0/+1) yet. Manual trigger only. Not "marketed" to FD.io
- community yet to avoid excessive LFN FD.io physical performance
- testbed blocking.
-
- - **Patch-on-Patch Infra**: Added capability to run performance tests
- using CSIT gerrit patch code testing VPP gerrit patch code, i.e.
- before any VPP and/or CSIT code is merged into git branch.
-
- - **CSIT PAPI Support**: Initial implementation of PAPI L1 KWs in
- CSIT using VPP Python bindings. Required for migraing away from
- VAT. Very few L1 KWs implemented ("show version", "show
- interfaces").
-
- - **General Code Housekeeping**: Ongoing RF keywords optimizations,
- removal of redundant RF keywords.
+ - **General Code Housekeeping**: Ongoing code optimizations and bug
+ fixes.
#. PRESENTATION AND ANALYTICS LAYER
- - **Graphs Layout Improvements**: Improved performance graphs layout
- for better readibility and maintenance: test grouping, axis
- labels, descriptions, other informative decoration. Master report
- generated. 744 graphs(!)
-
-
- - **Performance Trending**: Further improvements of continuous
- performance trending, anomaly detection and analysis.
-
-#. MISCELLANEOUS
-
- - **3n-dnv Tests (3rd Party)**: Published performance tests for 3n-
- dnv (3-Node Atom Denverton) from 3rd party testbeds running FD.io
- |csit-release| automated testing code.
- Only graphs for Packet Throughput and Speedup Multi-core and not
- for Packet Latency were published as there are no results for Packet
- Latency available.
+ - **Graphs improvements**: Updated Packet Latency graphs,
+ see :ref:`latency_methodology`.
.. raw:: latex
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 | `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%. |
-+----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 3 | `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. |
-+----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 4 | `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%. |
-+----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-| 5 | `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. |
-+----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
-
+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>`_ | |
++----+-----------------------------------------+--------------------------------------------------------------+