+.. _vpp_performance_tests_release_notes:
+
Release Notes
=============
Changes in |csit-release|
-------------------------
-#. **VPP performance tests**
-
- - *MRR tests* - New 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.
-
- - *Service Chaining with SRv6* - New SRv6 (Segment Routing IPv6) proxy
- tests measure performance of SRv6 Endpoint fronting SR-unaware
- appliance via masquerading (End.AM), dynamic proxy (End.AD) or
- static proxy (End.AS) SR functions.
-
-#. **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**
-
- - *Performance tests efficiency* - Qemu build/install optimizations,
- warmup phase handling, vpp restart handling. Resulted in improved
- stability and reduced total execution time by 30% for single pkt
- size e.g. 64B/78B.
-
- - *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 mrr jobs <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master/>`_
- with Robot Framework result files csit-vpp-perf-mrr-daily-master__*__output.xml.gz
- `archived here <https://docs.fd.io/csit/master/trending/_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
-~~~~~~~~~~~
+#. VPP PERFORMANCE TESTS
-NDR changes between testbeds are available in a
-CSV and pretty ASCII formats:
+ - **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.
- - `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>`_.
+ - **Added GTPU HW offload tests** for Intel e810 4p25ge NICs on 2n-icx
+ testbeds.
-.. note::
+ - **Added Wireguard tests** for VPP software path (3n-icx, 3n-snr
+ testbeds) and with built-in HW crypto QAT device (3n-snr testbed
+ only).
- 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.
-PDR Changes
-~~~~~~~~~~~
+#. TEST FRAMEWORK
-PDR 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 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>`_.
+ - **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** `performance dashboard <http://csit.fd.io/>`_ 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 | Lower than expected NDR throughput of DPDK | CSIT-571 | Suspected NIC firmware or DPDK driver issue affecting NDR and |
-| | testpmd and VPP L2 path NDR throughput with | | PDR throughput on XL710 and X710 NICs. |
-| | xl710 and x710 NICs, compared to x520 NICs. | | |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 3 | Tagged Ethernet dot1q and dot1ad L2 path | CSIT-1066 | Tagged Ethernet dot1q and dot1ad L2 path throughput regression: |
-| | throughput regression. | | NDR -2%..-5%, PDR -2%..-6%, MRR. Affects l2xc and l2bd |
-| | | | performance tests. |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 4 | IPSec (software, no QAT HW) throughput | CSIT-1064 | IPSec throughput regression: NDR -3%..-8%, PDR -2%..-8%, MRR |
-| | regression. | | -3%..-7%. Affects IPSec SW tests, QAT HW tests not affected. |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 5 | High failure rate of creating working container | CSIT-1065 | About 20% of orchestrated container topology tests failing data |
-| | topologies with K8s/Ligato orchestration. | | plane verification indicating configuration issue. Suspected |
-| | | | issue with Ligato vpp-agent. |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
+New
+___
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 1 | `CSIT-1850 | 2n-dnv: sporadic 1518B tput tests failing to establish required sessions. |
+| | <https://jira.fd.io/browse/CSIT-1850>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `CSIT-1864 | 2n-clx: half of the packets lost on PDR tests. |
+| | <https://jira.fd.io/browse/CSIT-1864>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 3 | `CSIT-1871 | 3n-snr: 25Ge Interface goes down randomly. |
+| | <https://jira.fd.io/browse/CSIT-1871>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 4 | `CSIT-1877 | 3n-alt, 3n-tsh: VM tests failing to boot VM. |
+| | <https://jira.fd.io/browse/CSIT-1877>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+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-1804 | All testbeds: NDR tests failing from time to time. |
+| | <https://jira.fd.io/browse/CSIT-1804>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 9 | `CSIT-1808 | All tests with 9000B payload frames not forwarded over memif interfaces. |
+| | <https://jira.fd.io/browse/CSIT-1808>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 10 | `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. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 11 | `CSIT-1835 | 3n-icx: vppecho BPS tests failing on timeout when checking hoststack finished. |
+| | <https://jira.fd.io/browse/CSIT-1835>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 12 | `CSIT-1849 | 2n-skx, 2n-clx: 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 |
++====+=========================================+===========================================================================================================+
+| 1 | `CSIT-1834 | 2n-icx, 2n-skx: sporadic AVF soak tests failing to find critical load with PLRsearch. |
+| | <https://jira.fd.io/browse/CSIT-1834>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `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>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 3 | `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. |
++----+-----------------------------------------+-------------------------------------------------------------------------------------+