+.. _vpp_performance_tests_release_notes:
+
Release Notes
=============
#. VPP PERFORMANCE TESTS
- - **Intel Xeon 2n-skx, 3n-skx testbeds**: VPP performance test data
- is now included in this report version. Due to substantial impact
- of test environment changes (applied during the CSIT-2001
- development cycle) on the performance of VPP software, a new
- approach to performance comparison and progression/regression
- root cause analysis (RCA) has been applied.
-
- - CSIT test environment is now versioned, with ver. 1 associated
- with CSIT rls1908 git branch as of 2019-08-21, and ver. 2
- associated with CSIT rls2001 git branch as of 2020-03-27.
-
- - To identify performance changes due to CSIT test environment
- changes from ver. 1 to ver. 2, VPP v19.08.1 has been re-tested in
- ver. 2 and compared against the past results obtained with
- testing in ver. 1. Separate RCA1 analysis has been applied to
- this part. See :ref:`vpp_compare_current_vs_previous_release` and
- :ref:`vpp_known_issues`.
-
- - To identify performance changes due to VPP code changes from
- v19.08.1 to v20.01.0, the latter has been tested in CSIT
- environment ver. 2 and compared against the former tested in CSIT
- environment ver. 1. Separate RCA2 analysis has been applied to
- this part. See :ref:`vpp_compare_current_vs_previous_release` and
- :ref:`vpp_known_issues`.
-
- - **Intel Xeon 2n-clx testbeds**: VPP performance test data is now
- included in this report. See :ref:`vpp_known_issues`.
-
- - **Service density 2n-skx tests**: Added new NF density tests with
- IPsec encryption between DUTs.
-
- - **AVF tests**: Full test coveraged based on code changes in CSIT
- core layer (driver/interface awareness) and generated by suite
- generator (Intel Fortville NICs only).
-
- - **Hoststack tests**: Major refactor of VPP Hoststack TCP/IP
- performance tests using WRK generator talking to the VPP HTTP
- static server plugin measuring connections per second and
- requests per second. Added new iperf3 with LDPreload tests,
- iperf3/LDPreload tests with packet loss induced via the VPP NSIM
- (Network Simulator) plugin, and QUIC/UDP/IP transport tests.
- All of the new tests measure goodput through the VPP Hoststack
- from client to server.
-
- - **Latency HDRHistogram**: Added High Dynamic Range Histogram
- latency measurements based on the new capability in TRex traffic
- generator. HDRH latency data presented in latency packet
- percentile graphs and in detailed results tables.
-
- - **Mellanox CX556A-EDAT tests**: Added tests with Mellanox
- ConnectX5-2p100GE NICs in 2n-clx testbeds using VPP native rdma
- driver.
-
- - **IPsec reconfiguration tests**: Added tests measuring the impact
- of IPsec tunnels creations and removals.
-
- - **Load Balancer tests**: Added VPP performance tests for Maglev,
- L3DSR (Direct Server Return), Layer 4 Load Balancing NAT Mode.
-
-#. TEST FRAMEWORK
-
- - **CSIT Python3 support**: Full migration of CSIT from Python2.7 to
- Python3.6. This change includes library migration, PIP dependency
- upgrade, CSIT container images, infrastructure packages
- ugrade/installation.
+ - **Intel Xeon Ice Lake**: Performance test data for these platforms
+ continues to be provided by external Intel benchmarking labs
+ executing |csit-release| tests. For details about the physical
+ setup see :ref:`tested_physical_topologies`.
- - **CSIT PAPI support**: Finished conversion of CSIT VAT L1 keywords
- to PAPI L1 KWs in CSIT using VPP Python bindings (VPP PAPI).
- Redesign of key components of PAPI Socket Executor and PAPI
- history. Due to issues with PAPI performance, VAT is still used
- in CSIT for all VPP scale tests. See known issues below.
+ - **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.
- - **Test Suite Generator**: Added capability to generate suites for
- different drivers per NIC model including DPDK, AVF, RDMA.
- Extended coverage for all tests.
-
- - **General Code Housekeeping**: Ongoing RF keywords optimizations,
- removal of redundant RF keywords and aligning of suite/test
- setup/teardowns.
+#. TEST FRAMEWORK
-#. TEST ENVIRONMENT
+ - **CSIT test environment** version has been updated to ver. 9, see
+ :ref:`test_environment_versioning`.
- - **TRex Fortville NIC Performance**: Received FVL fix from Intel
- resolving TRex low throughput issue. TRex per FVL NIC throughput
- increased from ~27 Mpps to the nominal ~37 Mpps. For detail see
- `CSIT-1503 <https://jira.fd.io/browse/CSIT-1503>`_ and `TRex-519
- <https://trex-tgn.cisco.com/youtrack/issue/trex-519>`_].
+ - **CSIT PAPI support**: Due to issues with PAPI performance, and
+ deprecation of VAT, CLI is used in CSIT for many VPP scale tests.
+ See known issues below.
- - **New Intel Xeon Cascadelake Testbeds**: Added performance tests
- for 2-Node-Cascadelake (2n-clx) testbeds with x710, xxv710 and
- cx556a-edat NIC cards.
+ - **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.
-
- - **Latency graphs**: Min/Avg/Max group bar latency graphs are
- replaced with packet latency percentile distributon at different
- background packet loads based on TRex latency hdrhistogram
- measurements.
-
-..
- // Alternative Note for 1st Bullet when bad microcode Skx, Clx results are published
- - **Intel Xeon 2n-skx, 3n-skx and 2n-clx testbeds**: VPP performance
- test data is included in this report version, but it shows lower
- performance and behaviour inconsistency of these systems
- following the upgrade of processor microcode packages (skx ucode
- 0x2000064, clx ucode 0x500002c) as part of updating Ubuntu 18.04
- LTS kernel version. Tested VPP and DPDK applications (L3fwd) are
- affected. Skx and Clx test data will be corrected in subsequent
- maintenance report version(s) once the issue is resolved. See
- :ref:`vpp_known_issues`.
+ - **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:
+Fixed
+_____
+
+Issues reported in previous releases which were fixed in this release:
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| # | JiraID | Issue Description |
+| # | 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-662 | 9000B packets not supported by NICs VIC1227 and VIC1387. |
-| | <https://jira.fd.io/browse/VPP-662>`_ | |
-+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 3 | `CSIT-1498 | Memif tests are sporadically failing on initialization of memif connection. |
-| | <https://jira.fd.io/browse/CSIT-1498>`_ | |
-+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 4 | `VPP-1677 | 9000B ip4 nat44: VPP crash + coredump. |
-| | <https://jira.fd.io/browse/VPP-1677>`_ | VPP crashes very often in case that NAT44 is configured and it has to process IP4 jumbo frames (9000B). |
-+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 5 | `CSIT-1591 | 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-1499>`_ | longer to program VPP). This needs to be addressed on the PAPI side. |
-| +-----------------------------------------+ |
-| | `VPP-1763 | |
-| | <https://jira.fd.io/browse/VPP-1763>`_ | |
-+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 6 | `VPP-1675 | IPv4 IPSEC 9000B packet tests are failing as no packet is forwarded. |
-| | <https://jira.fd.io/browse/VPP-1675>`_ | Reason: chained buffers are not supported. |
-+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 7 | `CSIT-1593 | IPv4 AVF 9000B packet tests are failing on 3n-skx while passing on 2n-skx. |
-| | <https://jira.fd.io/browse/CSIT-1593>`_ | |
+| 1 | `CSIT-1789 | AVF driver does not perform RSS in a deterministic way. |
+| | <https://jira.fd.io/browse/CSIT-1789>`_ | VPP now uses the same RSS key with AVF driver as with DPDK driver. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 8 | `CSIT-1675 | Intel Xeon 2n-skx, 3n-skx and 2n-clx testbeds behaviour and performance became inconsistent following |
-| | <https://jira.fd.io/browse/CSIT-1675>`_ | the upgrade to the latest Ubuntu 18.04 LTS kernel version (4.15.0-72-generic) and associated microcode |
-| | | packages (skx ucode 0x2000064, clx ucode 0x500002c). VPP as well as DPDK L3fwd tests are affected. |
+| 2 | `CSIT-1786 | IP4 and IP6 scale tests failing with no traffic forwarded. |
+| | <https://jira.fd.io/browse/CSIT-1786>`_ | CSIT replaced the old single VAT command by file full of "exec" CLI commands executed by VAT. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 9 | `CSIT-1679 | All 2n-clx VPP ip4 tests with xxv710 and avf driver are failing. |
-| | <https://jira.fd.io/browse/CSIT-1679>`_ | |
-+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 10 | `CSIT-1680 | Some 2n-clx cx556a rdma tests are failing. |
-| | <https://jira.fd.io/browse/CSIT-1680>`_ | |
+
+Old
+___
+
+Issues reported in previous releases which still affect the current results.
+
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 11 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Investigate high stdev of tests with VPP inside VM. |
-| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
-| +-----------------------------------------+ |
-| | `CSIT-1704 | |
-| | <https://jira.fd.io/browse/CSIT-1704>`_ | |
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 3 | `CSIT-1782 | Multicore AVF tests are failing when trying to create interface. |
+| | <https://jira.fd.io/browse/CSIT-1782>`_ | Frequency is reduced by s CSIT workaround, but occasional failures do still happen. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 12 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause of dot1q-l2xcbase progression. |
-| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
-| +-----------------------------------------+ |
-| | `CSIT-1705 | |
-| | <https://jira.fd.io/browse/CSIT-1705>`_ | |
+| 4 | `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. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 13 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause of avf-ip4scale regression. |
-| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
+| 5 | `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. |
| +-----------------------------------------+ |
-| | `CSIT-1706 | |
-| | <https://jira.fd.io/browse/CSIT-1706>`_ | |
+| 5 | `VPP-1998 | |
+| | <https://jira.fd.io/browse/VPP-1998>`_ | |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 14 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause of progression in vhost-user tests with testpmd in VM. |
-| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
-| +-----------------------------------------+ |
-| | `CSIT-1707 | |
-| | <https://jira.fd.io/browse/CSIT-1707>`_ | |
+| 6 | `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>`_ | |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 15 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause for avf-ip4base regression. |
-| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
-| +-----------------------------------------+ |
-| | `CSIT-1708 | |
-| | <https://jira.fd.io/browse/CSIT-1708>`_ | |
+| 7 | `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. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+New
+___
+
+No new issues appeared in |csit-release| for VPP performance tests,
+except for the performance changes listed below.
+
+Root Cause Analysis for Performance Changes
+-------------------------------------------
+
+List of RCAs in |csit-release| for VPP performance changes:
+
++----+-----------------------------------------+------------------------------------------------------------+
+| # | JiraID | Issue Description |
++====+=========================================+============================================================+
+| 0 | | To be updated when descriptions in Jira tickets are ready. |
++----+-----------------------------------------+------------------------------------------------------------+