+.. _vpp_performance_tests_release_notes:
+
Release Notes
=============
Changes in |csit-release|
-------------------------
-#. **VPP performance tests**
-
- - *MRR tests* - Maximum Receive Rate tests measure the packet forwarding rate
- under the maximum load offered by traffic generator over a set trial
- duration, regardless of packet loss. MRR tests are used for continuous
- performance trending and for comparison between releases.
-
- - *MLR tests* - NDR and PDR tests measure the packet forwarding rate using
- MLRsearch library by traffic generator. All tests that previously used
- binary search were converted to MLRsearch.
-
- - *L2patch tests* - Tests measure performance of L2patch, cross linking
- RX and TX of two physical interfaces.
-
- - *2-node tests* - Baseline set of 2-node tests covering base ip4, ip6,
- l2patch, l2bd, l2xc.
-
- - *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 multithreading* - SMT-aware automatic detection and
- resource configuration including thread affinity, number of rx queues and
- DPDK I/O mbufs. Tests are automatically tagged during execution indicating
- configuration.
-
- - *Intel Skylake* - Topologies consisting of 2-node and 3-node using
- SuperMirco servers each equipped with two Intel Xeon Skylake Platinum
- processors. Full Ansible playbooks refactor for quick server
- (re)installation and reference pointers of configuration.
-
-#. **Presentation and Analytics Layer**
-
- - *Performance trending* - Added continuous performance trending and
- analysis. New Performance Trending and Performance Analysis jobs
- executed regular throughput tests, with results being subsequently
- analysed and trend and anomalies summarized and presented in VPP
- Performance Dashboard and trendline graphs.
-
-#. **Test Framework Optimizations**
-
- - *General code housekeeping* - ongoing RF keywords optimizations,
- removal of redundant RF keywords.
-
-Performance Changes
--------------------
-
-Relative performance changes in measured packet throughput in |csit-release|
-are calculated against the results from |csit-release-1|
-report. Listed mean and standard deviation values are computed based on
-a series of the same tests executed against respective VPP releases to
-verify test results repeatability, with percentage change calculated for
-mean values. Note that the standard deviation is quite high for a small
-number of packet throughput tests, what indicates poor test results
-repeatability and makes the relative change of mean throughput value not
-fully representative for these tests. The root causes behind poor
-results repeatability vary between the test cases.
-
-NDR Changes
-~~~~~~~~~~~
-
-NDR throughput changes between releases are available in a
-CSV and pretty ASCII formats:
-
- - `csv format for 1t1c <../_static/vpp/performance-changes-1t1c-ndr.csv>`_,
- - `csv format for 2t2c <../_static/vpp/performance-changes-2t2c-ndr.csv>`_,
- - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-1t1c-ndr.txt>`_,
- - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-2t2c-ndr.txt>`_.
-
-.. note::
-
- Test results have been generated by
- `FD.io test executor vpp performance job 3n-hsw`_,
- with Robot Framework result
- files csit-vpp-perf-|srelease|-\*.zip
- `archived here <../_static/archive/>`_.
-
-PDR Changes
-~~~~~~~~~~~
-
-PDR throughput changes between releases are available in a
-CSV and pretty ASCII formats:
-
- - `csv format for 1t1c <../_static/vpp/performance-changes-1t1c-pdr.csv>`_,
- - `csv format for 2t2c <../_static/vpp/performance-changes-2t2c-pdr.csv>`_,
- - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-1t1c-pdr.txt>`_,
- - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-2t2c-pdr.txt>`_.
-
-.. note::
-
- Test results have been generated by
- `FD.io test executor vpp performance job 3n-hsw`_,
- with Robot Framework result
- files csit-vpp-perf-|srelease|-\*.zip
- `archived here <../_static/archive/>`_.
-
-MRR Changes
-~~~~~~~~~~~
-
-MRR small packet throughput changes between releases are available in a
-CSV and pretty ASCII formats:
-
- - `csv format for 1t1c <../_static/vpp/performance-changes-1t1c-mrr.csv>`_,
- - `csv format for 2t2c <../_static/vpp/performance-changes-2t2c-mrr.csv>`_,
- - `csv format for 4t4c <../_static/vpp/performance-changes-4t4c-mrr.csv>`_,
- - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-1t1c-mrr.txt>`_,
- - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-2t2c-mrr.txt>`_,
- - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-4t4c-mrr.txt>`_.
-
-.. note::
-
- Test results have been generated by
- `FD.io test executor vpp performance job 3n-hsw`_,
- with Robot Framework result
- files csit-vpp-perf-|srelease|-\*.zip
- `archived here <../_static/archive/>`_.
-
-Comparison Across Testbeds
---------------------------
-
-Relative performance changes in measured packet throughputon 3-Node Skx testbed
-are calculated against the results measured on 3-Node Hsw testbed.
-
-NDR Changes
-~~~~~~~~~~~
-
-NDR changes between testbeds are available in a
-CSV and pretty ASCII formats:
-
- - `csv format for ndr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-ndr.csv>`_,
- - `pretty ASCII format for ndr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-ndr.txt>`_.
-
-.. note::
-
- Test results have been generated by
- `FD.io test executor vpp performance job 3n-hsw`_ and
- `FD.io test executor vpp performance job 3n-skx`_
- with Robot Framework result
- files csit-vpp-perf-|srelease|-\*.zip
- `archived here <../_static/archive/>`_.
-
-PDR Changes
-~~~~~~~~~~~
-
-PDR throughput changes between testbeds are available in a
-CSV and pretty ASCII formats:
+#. VPP PERFORMANCE TESTS
- - `csv format for pdr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.csv>`_,
- - `pretty ASCII format for pdr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.txt>`_.
+ - **Added new performance testbed 3n-snr** (3 Node SnowRidge, with Intel
+ Atom processors), to later replace 3n-dnv and 2n-dnv (3 and 2 Node
+ Denverton) testbeds.
-.. note::
+ - **Added GTPU HW offload tests** for Intel e810 4p25ge NICs on 2n-icx
+ testbeds.
- Test results have been generated by
- `FD.io test executor vpp performance job 3n-hsw`_ and
- `FD.io test executor vpp performance job 3n-skx`_
- with Robot Framework result
- files csit-vpp-perf-|srelease|-\*.zip
- `archived here <../_static/archive/>`_.
+ - **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.
-MRR Changes
-~~~~~~~~~~~
+#. TEST FRAMEWORK
-MRR throughput changes between testbeds are available in a
-CSV and pretty ASCII formats:
+ - **CSIT test environment** version has been updated to ver. 11, see
+ :ref:`test_environment_versioning`.
- - `csv format for mrr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.csv>`_,
- - `pretty ASCII format for mrr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.txt>`_.
+ - **TCP tput profiles** have to be changed, as newer TRex versions
+ are not deterministic enough when deciding when to send an ACK.
-.. note::
+ - **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`.
- Test results have been generated by
- `FD.io test executor vpp performance job 3n-hsw`_ and
- `FD.io test executor vpp performance job 3n-skx`_
- with Robot Framework result
- files csit-vpp-perf-|srelease|-\*.zip
- `archived here <../_static/archive/>`_.
+ - **General Code Housekeeping**: Ongoing code optimizations and bug
+ fixes.
-Throughput Trending
--------------------
+#. PRESENTATION AND ANALYTICS LAYER
-In addition to reporting throughput changes between VPP releases, CSIT
-provides continuous performance trending for VPP master branch:
+ - **`C-Dash <http://csit.fd.io/>`** performance dashboard got updated UI and
+ updated backend increasing its performance and robustness.
-#. `VPP Performance Dashboard <https://docs.fd.io/csit/master/trending/introduction/index.html>`_
- - per VPP test case throughput trend, trend compliance and summary of
- detected anomalies.
+.. raw:: latex
-#. `Trending Methodology <https://docs.fd.io/csit/master/trending/methodology/index.html>`_
- - throughput test metrics, trend calculations and anomaly
- classification (progression, regression, outlier).
+ \clearpage
-#. `Trendline Graphs <https://docs.fd.io/csit/master/trending/trending/index.html>`_
- - per VPP build MRR throughput measurements against the trendline
- with anomaly highlights, with associated CSIT test jobs.
+.. _vpp_known_issues:
Known Issues
------------
-List of known issues in |csit-release| for VPP performance tests:
-
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| # | Issue | Jira ID | Description |
-+===+=================================================+============+=================================================================+
-| 1 | Sporadic (1 in 200) NDR discovery test failures | CSIT-570 | DPDK reporting rx-errors, indicating L1 issue. Suspected issue |
-| | on x520. | | with HW combination of X710-X520 in LF testbeds. Not observed |
-| | | | outside of LF testbeds. |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 2 | High failure rate of api call | VPP-1361 | Failure rate: 30-40% of tests failing due to interfaces not |
-| | sw_interface_set_flags [admin-up|link-up] | | in link-up state after API call sw_interface_set_flags. |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 3 | Scale IPSecHW Interface mode throughput | CSIT-1234 | IPSec throughput regression: NDR -28%..-31%, PDR -28%..-31%, |
-| | regression. | | MRR -40%. Affects IPSec HW Scale 1000tnl tests with Int mode. |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
+New
+___
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| | | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+Previous
+________
+
+Issues reported in previous releases which still affect the current results.
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 1 | `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. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `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. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 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-1799 | All NAT44-ED 16M scale tests fail while setting NAT44 address range. |
+| | <https://jira.fd.io/browse/CSIT-1799>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 5 | `CSIT-1800 | All Geneve L3 mode scale tests (1024 tunnels) are failing. |
+| | <https://jira.fd.io/browse/CSIT-1800>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 6 | `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). |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 7 | `CSIT-1802 | AF-XDP - NDR tests failing from time to time. |
+| | <https://jira.fd.io/browse/CSIT-1802>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 8 | `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>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 9 | `CSIT-1804 | 3n-tsh, 3n-alt testbed (Taishan, Altra): NDR tests failing from time to time. |
+| | <https://jira.fd.io/browse/CSIT-1804>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 10 | `CSIT-1808 | All tests with 9000B payload frames not forwarded over memif interfaces. |
+| | <https://jira.fd.io/browse/CSIT-1808>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 11 | `CSIT-1809 | All tests with 9000B payload frames not forwarded over vhostuser interfaces. |
+| | <https://jira.fd.io/browse/CSIT-1809>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 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>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 13 | `CSIT-1827 | 3n-icx, 3n-skx: all AVF crypto tests sporadically fail. 1518B with no traffic, IMIX with excessive |
+| | <https://jira.fd.io/browse/CSIT-1827>`_ | packet loss. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 14 | `CSIT-1830 | All testbeds: All TCP tput (and pps) tests are failing for small packets. |
+| | <https://jira.fd.io/browse/CSIT-1830>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 15 | `CSIT-1832 | 3n-alt: NDR 1 packet lost on random tests. |
+| | <https://jira.fd.io/browse/CSIT-1832>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 16 | `CSIT-1834 | 2n-icx, 2n-skx: sporadic AVF soak tests failing to find critical load with PLRsearch. |
+| | <https://jira.fd.io/browse/CSIT-1834>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 17 | `CSIT-1847 | 2n-skx: all 10vm-1t test failed with half of packets dropped. |
+| | <https://jira.fd.io/browse/CSIT-1847>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 18 | `CSIT-1849 | 2n-skx: UDP 16m tput tests fail to create all sessions. |
+| | <https://jira.fd.io/browse/CSIT-1849>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+Fixed
+_____
+
+Issues reported in previous releases which were fixed in this release:
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 16 | `CSIT-1834 | 2n-icx, 2n-skx: sporadic AVF soak tests failing to find critical load with PLRsearch. |
+| | <https://jira.fd.io/browse/CSIT-1834>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 1 | `CSIT-1846 | 2n-skx, 2n-clx, 2n-icx: ALL 1518B TCP tput tests failing with big packet loss. |
+| | <https://jira.fd.io/browse/CSIT-1846>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `CSIT-1851 | trending regression: various icelake tests around 2202-04-15 |
+| | <https://jira.fd.io/browse/CSIT-1851>`_ | Somewhat expected consequence of a VPP usability fix, |
+| | | the previous VPP compiler version was too new for the OS used. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+.. _vpp_rca:
+
+Root Cause Analysis for Performance Changes
+-------------------------------------------
+
+List of RCAs in |csit-release| for VPP performance changes:
+
++----+-----------------------------------------+-------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+=====================================================================================+
+| 1 | `VPP-2030 | regression: ip6base on ICX around 2022-03-23 |
+| | <https://jira.fd.io/browse/VPP-2030>`_ | "Loads blocked due to overlapping with a preceding store that cannot be forwarded." |
+| | | started happening in ip6-lookup graph node. |
++----+-----------------------------------------+-------------------------------------------------------------------------------------+
+| 2 | `CSIT-1852 | 2n-zn2 mellanox performance cap |
+| | <https://jira.fd.io/browse/CSIT-1852>`_ | Old issue, only now distinguished from CSIT-1751. |
+| | | This testbed+nic combination is capped below 28 Mpps, cause not identified yet. |
++----+-----------------------------------------+-------------------------------------------------------------------------------------+
+| 3 | `CSIT-1853 | trending regression: nat44ed cps around 2202-04-01 |
+| | <https://jira.fd.io/browse/CSIT-1853>`_ | VPP change added more computation to slow path (in order to support multiple VRFs). |
+| | | Not clear if the VPP implementation is optimized enough. |
++----+-----------------------------------------+-------------------------------------------------------------------------------------+