+.. _vpp_performance_tests_release_notes:
+
Release Notes
=============
#. VPP PERFORMANCE TESTS
- - **Intel Xeon 2n-skx, 3n-skx testbeds**: VPP performance test data
- is not included in this report version. This is due to the lower
- performance and behaviour inconsistency of these systems
- following the upgrade of processor microcode packages (skx ucode
- 0x2000064), done as part of updating Ubuntu 18.04 LTS kernel
- version. Tested VPP and DPDK applications (L3fwd) are affected.
- Skx test data will be added in subsequent maintenance report
- version(s) once the issue is resolved. See
- :ref:`vpp_known_issues`.
-
- - **Intel Xeon 2n-clx testbeds**: VPP performance test data is now
- included in this report, after resolving the issue of lower
- performance and behaviour inconsistency of these systems due to
- the Linux kernel driven upgrade of processor microcode packages
- to 0x500002c. The resolution is to use latest SuperMicro BIOS 3.2
- (for X11DPG-QT motherboards used) that upgrades processor
- microcode to 0x500002c, AND NOT kernel provided ucode package as
- it does put system into sub-optimal state. Subset of 2n-clx VPP
- tests are failing due to clx system behaviour change: i) all ip4
- tests with xxv710 and avf driver and ii) some cx556a rdma tests.
- 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.
+ - **Intel Xeon Ice Lake**: Added initial test data for these
+ platforms. Current CSIT-2106 report data for Intel Xeon Ice Lake
+ comes from an external source (Intel labs running CSIT code on
+ "8360Y D Stepping" and "6338N" processors). For details about the
+ physical setup see :ref:`tested_physical_topologies`. Tested
+ VPP and CSIT versions are pre-release, VPP
+ 21.06-rc0~779-gd640ae52f.
+
+ - **MLRsearch improvements**: Added support for multiple packet
+ throughput rates in a single search, each rate is associated
+ with a distinct Packet Loss Ratio (PLR) criterion. Previously
+ only Non Drop Rate (NDR) (PLR=0) and single Partial Drop Rate
+ (PDR) (PLR<0.5%) were supported. Implemented number of
+ optimizations improving rate discovery efficiency.
+
+ - **Reduction of tests**: Removed obsolete VPP use cases and
+ superfluous test combinations from continuous and report test
+ executions, including:
+
+ - All vts tests, obsolete use cases.
+ - dot1q tests apart from dot1q-l2bd, superfluous combinations.
+ - -100flows, -100kflows in all acl tests.
+ - nat44 tests
+
+ - -pps tests, replaced by -tput tests.
+ - h1-p1-s1 single session tests, unessential combination.
+ - h4096-p63-s258048 tests, unessential scale combination.
+
+ - ipsec tests
+
+ - ethip4ipsectptlispgpe.
+ - policy-aes128gcm.
+ - policy-aes128cbc-hmac256sha.
+ - policy-aes128cbc-hmac512sha.
+ - int-aes128cbc-hmac256sha.
+ - scale of
+
+ - 400tnlsw.
+ - 5000tnlsw.
+ - 20000tnlsw.
+ - 60000tnlsw.
#. 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.
-
- - **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.
-
- - **Test Suite Generator**: Added capability to generate suites for
- different drivers per NIC model including DPDK, AVF, RDMA.
- Extended coverage for all tests.
+ - **CSIT test environment** version has been updated to ver. 8, see
+ :ref:`test_environment_versioning`.
- - **General Code Housekeeping**: Ongoing RF keywords optimizations,
- removal of redundant RF keywords and aligning of suite/test
- setup/teardowns.
+ - **CSIT in AWS environment**: Added CSIT support for AWS c5n
+ instances environment.
-#. TEST ENVIRONMENT
+ - **CSIT PAPI support**: Due to issues with PAPI performance, VAT is
+ still used in CSIT for all VPP scale tests. See known issues
+ below.
- - **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>`_].
-
- - **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
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
| # | 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. |
+| 1 | `CSIT-1782 | Multicore AVF tests are failing when trying to create interface. |
+| | <https://jira.fd.io/browse/CSIT-1782>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 2 | `CSIT-1763 | Adapt ramp-up phase of nat44 tests for different frame sizes. |
+| | <https://jira.fd.io/browse/CSIT-1763>`_ | Currently ramp-up phase rate and duration values are correctly set for tests with 64B frame size. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 2 | `VPP-662 | 9000B packets not supported by NICs VIC1227 and VIC1387. |
-| | <https://jira.fd.io/browse/VPP-662>`_ | |
+| 3 | `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. |
+| +-----------------------------------------+ The usual PAPI library spends too much time parsing arguments, so even with async processing (hundreds of |
+| | `VPP-1763 | commands in flight over socket), the VPP configuration for large scale tests (millions of messages) takes |
+| | <https://jira.fd.io/browse/VPP-1763>`_ | too long. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 3 | `CSIT-1498 | Memif tests are sporadically failing on initialization of memif connection. |
-| | <https://jira.fd.io/browse/CSIT-1498>`_ | |
+| 4 | `CSIT-1789 | AVF driver does not perform RSS in a deterministic way. |
+| | <https://jira.fd.io/browse/CSIT-1789>`_ | This increases standard deviation of tests with small number of flows (mainly ipsec). |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 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-1790 | Broken TRex latency measurements with TRex v2.88, DPDK 21.02 and FVL FW 6.01. |
+| | <https://jira.fd.io/browse/CSIT-1790>`_ | High latency O(5msec) for all VPP and testpmd/l3fwd test cases for FVL NICs with FW 6.01. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 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 | `CSIT-1780 | IPSEC SW async scheduler MRR tests failing with no traffic forwarded. |
+| | <https://jira.fd.io/browse/CSIT-1780>`_ | |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 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-1786 | IP4 and IP6 scale tests failing with no traffic forwarded. |
+| | <https://jira.fd.io/browse/CSIT-1786>`_ | Issue reported to VPP devs. |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 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>`_ | |
+| 8 | `CSIT-1785 | NAT44ED tests failing to establish all TCP sessions. |
+| | <https://jira.fd.io/browse/CSIT-1785>`_ | |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 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. |
+| 9 | `CSIT-1791 | Performance regression in RDMA tests, due to CSIT environment changes. |
+| | <https://jira.fd.io/browse/CSIT-1791>`_ | |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 9 | `CSIT-1679 | All 2n-clx VPP ip4 tests with xxv710 and avf driver are failing. |
-| | <https://jira.fd.io/browse/CSIT-1679>`_ | |
+
+Root Cause Analysis for Performance Changes
+-------------------------------------------
+
+List of RCAs in |csit-release| for VPP performance changes:
+
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
-| 10 | `CSIT-1680 | Some 2n-clx cx556a rdma tests are failing. |
-| | <https://jira.fd.io/browse/CSIT-1680>`_ | |
+| # | JiraID | Issue Description |
++====+=========================================+===========================================================================================================+
+| 1 | `VPP-1972 | One VPP change has decreased performance of NAT44ed processing, mostly slow path. |
+| | <https://jira.fd.io/browse/VPP-1972>`_ | |
+----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+