Report: vpp performance release notes update
[csit.git] / docs / report / vpp_performance_tests / csit_release_notes.rst
index e7c61e6..949419d 100644 (file)
-CSIT Release Notes\r
-==================\r
-\r
-Changes in CSIT |release|\r
--------------------------\r
-\r
-#. Added VPP performance tests\r
-\r
-   - **Container Service Chain Topologies Orchestrated by K8s with VPP Memif**\r
-\r
-     - Added tests with VPP vswitch in container connecting a number of VPP-\r
-       in-container service chain topologies with L2 Cross-Connect and L2\r
-       Bridge-Domain configurations, orchestrated by Kubernetes. Added\r
-       following forwarding topologies: i) "Parallel" with packets flowing from\r
-       NIC via VPP to container and back to VPP and NIC; ii) "Chained" (a.k.a.\r
-       "Snake") with packets flowing via VPP to container, back to VPP, to next\r
-       container, back to VPP and so on until the last container in a chain,\r
-       then back to VPP and NIC; iii) "Horizontal" with packets flowing via VPP\r
-       to container, then via "horizontal" memif to next container, and so on\r
-       until the last container, then back to VPP and NIC;\r
-\r
-   - **VPP TCP/IP stack**\r
-\r
-     - Added tests for VPP TCP/IP stack using VPP built-in HTTP server.\r
-       WRK traffic generator is used as a client-side;\r
-\r
-   - **SRv6**\r
-\r
-     - Initial SRv6 (Segment Routing IPv6) tests verifying performance of\r
-       IPv6 and SRH (Segment Routing Header) encapsulation, decapsulation,\r
-       lookups and rewrites based on configured End and End.DX6 SRv6 egress\r
-       functions;\r
-\r
-   - **IPSecSW**\r
-\r
-     - SW computed IPSec encryption with AES-GCM, CBC-SHA1 ciphers, in\r
-       combination with IPv4 routed-forwarding;\r
-\r
-#. Presentation and Analytics Layer\r
-\r
-     - Added throughput speedup analysis for multi-core and multi-thread\r
-       VPP tests into Presentation and Analytics Layer (PAL) for automated\r
-       CSIT test results analysis;\r
-\r
-#. Other changes\r
-\r
-     - **Framework optimizations**\r
-\r
-       - Ability to run CSIT framework on ARM architecture;\r
-\r
-       - Overall stability improvements;\r
-\r
-     - **NDR and PDR throughput binary search change**\r
-\r
-       - Increased binary search resolution by reducing final step from\r
-         100kpps to 50kpps;\r
-\r
-     - **VPP plugin loaded as needed by tests**\r
-\r
-       - From this release only plugins required by tests are loaded at\r
-         VPP initialization time. Previously all plugins were loaded for\r
-         all tests;\r
-\r
-Performance Changes\r
--------------------\r
-\r
-Relative performance changes in measured packet throughput in CSIT\r
-|release| are calculated against the results from CSIT |release-1|\r
-report. Listed mean and standard deviation values are computed based on\r
-a series of the same tests executed against respective VPP releases to\r
-verify test results repeatibility, with percentage change calculated for\r
-mean values. Note that the standard deviation is quite high for a small\r
-number of packet throughput tests, what indicates poor test results\r
-repeatability and makes the relative change of mean throughput value not\r
-fully representative for these tests. The root causes behind poor\r
-results repeatibility vary between the test cases.\r
-\r
-NDR Throughput Changes\r
-~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-NDR small packet throughput changes between releases are available in a CSV and\r
-pretty ASCII formats:\r
-\r
-  - `csv format for 1t1c <../_static/vpp/performance-changes-ndr-1t1c-full.csv>`_,\r
-  - `csv format for 2t2c <../_static/vpp/performance-changes-ndr-2t2c-full.csv>`_,\r
-  - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-ndr-1t1c-full.txt>`_,\r
-  - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-ndr-2t2c-full.txt>`_.\r
-\r
-PDR Throughput Changes\r
-~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-NDR small packet throughput changes between releases are available in a CSV and\r
-pretty ASCII formats:\r
-\r
-  - `csv format for 1t1c <../_static/vpp/performance-changes-pdr-1t1c-full.csv>`_,\r
-  - `csv format for 2t2c <../_static/vpp/performance-changes-pdr-2t2c-full.csv>`_,\r
-  - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-pdr-1t1c-full.txt>`_,\r
-  - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-pdr-2t2c-full.txt>`_.\r
-\r
-Measured improvements are in line with VPP code optimizations listed in\r
-`VPP-18.01 release notes\r
-<https://docs.fd.io/vpp/18.01/release_notes_1801.html>`_.\r
-\r
-MRR Throughput Changes\r
-~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-MRR changes between releases are available in a CSV and\r
-pretty ASCII formats:\r
-\r
-  - `csv format for 1t1c <../_static/vpp/performance-changes-mrr-1t1c-full.csv>`_,\r
-  - `csv format for 2t2c <../_static/vpp/performance-changes-mrr-2t2c-full.csv>`_,\r
-  - `csv format for 4t4c <../_static/vpp/performance-changes-mrr-4t4c-full.csv>`_,\r
-  - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-mrr-1t1c-full.txt>`_,\r
-  - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-mrr-2t2c-full.txt>`_,\r
-  - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-mrr-4t4c-full.txt>`_.\r
-\r
-Known Issues\r
-------------\r
-\r
-Here is the list of known issues in CSIT |release| for VPP performance tests:\r
-\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| # | Issue                                           | Jira ID    | Description                                                     |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 1 | Vic1385 and Vic1227 low performance.            | VPP-664    | Low NDR performance.                                            |\r
-|   |                                                 |            |                                                                 |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 2 | Sporadic (1 in 200) NDR discovery test failures | CSIT-570   | DPDK reporting rx-errors, indicating L1 issue. Suspected issue  |\r
-|   | on x520.                                        |            | with HW combination of X710-X520 in LF testbeds. Not observed   |\r
-|   |                                                 |            | outside of LF testbeds.                                         |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 3 | Lower than expected NDR throughput with         | CSIT-571   | Suspected NIC firmware or DPDK driver issue affecting NDR and   |\r
-|   | xl710 and x710 NICs, compared to x520 NICs.     |            | PDR throughput. Applies to XL710 and X710 NICs.                 |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 4 | QAT IPSec scale with 1000 tunnels (interfaces)  | VPP-1121   | VPP crashes during configuration of 1000 IPsec tunnels.         |\r
-|   | in 2t2c config, all tests are failing.          |            | 1t1c tests are not affected                                     |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 5 | rls1801 plugin related performance regression   | CSIT-925   | With all plugins loaded NDR, PDR and MaxRates vary              |\r
-|   |                                                 |            | intermittently from 3% to 5% across multiple test executions.   |\r
-|   |                                                 |            | Requires plugin code bisecting.                                 |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 6 | rls1801 generic small performance regression    | CSIT-926   | Generic performance regression of discovered NDR, PDR and       |\r
-|   | ip4base, l2xcbase, l2bdbase                     |            | MaxRates of -3%..-1% vs. rls1710, affects ip4base, l2xcbase,    |\r
-|   |                                                 |            | l2bdbase test suites. Not detected by CSIT performance trending |\r
-|   |                                                 |            | scheme as it was masked out by another issue CSIT-925.          |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 7 | rls1801 substantial NDR performance regression  | CSIT-927   | Much lower NDR for vhostvr1024 tests, with mean values          |\r
-|   | for vhost-user vring size of 1024               |            | regression of -17%..-42% vs. rls1710, but also very high        |\r
-|   |                                                 |            | standard deviation of up to 1.46 Mpps => poor repeatibility.    |\r
-|   |                                                 |            | Making mean values not fully representative.                    |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 8 | rls1801 substantial NDR/PDR regression for      | CSIT-928   | NDR regression of -7%..-15%, PDR regression of -3%..-15%        |\r
-|   | IPSec tunnel scale with HW QAT crypto-dev       |            | compared to rls1710.                                            |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
+Release Notes
+=============
+
+Changes in |csit-release|
+-------------------------
+
+#. VPP PERFORMANCE TESTS
+
+   - CSIT test environment is versioned, see
+     :ref:`test_environment_versioning`.
+
+   - To identify performance changes due to VPP code changes from
+     v20.05.0 to v20.09.0, both have been tested in CSIT environment
+     ver. 5 and compared against each other. All substantial
+     progressions has been marked up with RCA analysis. See
+     :ref:`vpp_compare_current_vs_previous_release` and
+     :ref:`vpp_known_issues`.
+
+   - **NAT44 tests**: Adapted existing and added new tests.
+
+     - Refactored NAT44 deterministic mode (nat44det) tests to use separate
+       det44 vpp plugin and to use the same scheme of inside and outside
+       addresses and ports, as used in new NAT44 endpoint-dependent mode tests.
+
+     - Added new NAT44 endpoint-depended mode uni-directional (nat44ed-udir)
+       tests that measure packet throughput in one direction with usage of TRex
+       in stateless mode.
+
+     - Added new NAT44 endpoint-dependent mode CPS tests that measure
+       connections per second with usage of TRex in stateful mode.
+       NOTE: CPS measurement data will be added in two weeks.
+
+   - **IPSec async mode tests**: Added VPP performance tests for async crypto
+     engine.
+
+   - **AMD 2n-zn2 testbed**: New physical testbed type installed in FD.io CSIT,
+     VPP performance data will be added in upcoming weeks.
+
+#. TEST FRAMEWORK
+
+   - **TRex ASTF**: Added capability to run TRex in advanced stateful mode.
+
+   - **CSIT PAPI support**: Due to issues with PAPI performance, VAT is
+     still used in CSIT for all VPP scale tests. See known issues below.
+
+   - **General Code Housekeeping**: Ongoing RF keywords optimizations,
+     removal of redundant RF keywords and aligning of suite/test
+     setup/teardowns.
+
+   - **Intel E810CQ 100G NIC**: Added configuration for Intel E810CQ 100G NIC.
+     No tests run for this NIC as it is not present in FD.io CSIT lab yet.
+
+#. PRESENTATION AND ANALYTICS LAYER
+
+   - **Graphs improvements**: Added possibility to use Gbps on Y-axis in
+     Packet Throughput and Speedup Multi-Core graphs, added unidirectional
+     mode to the Latency graphs.
+
+.. raw:: latex
+
+    \clearpage
+
+.. _vpp_known_issues:
+
+Known Issues
+------------
+
+List of known issues in |csit-release| for VPP performance tests: TODO: check
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| #  | 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-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.         |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+|  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.                                      |
+|    +-----------------------------------------+ 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.                                                                                                 |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+|  5 | `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.                                                                |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+|  6 | `VPP-1934                               | [i40e] Interfaces are not brought up from carrier-down.                                                   |
+|    | <https://jira.fd.io/browse/VPP-1934 >`_ | In case of i40e -based interface (e.g Intel x700 series NIC) is bound to kernel driver (i40e) and is in   |
+|    |                                         | state "no-carrier" (<NO-CARRIER,BROADCAST,MULTICAST,UP>) because previously it was disabled via           |
+|    |                                         | "I40E_AQ_PHY_LINK_ENABLED" call, then VPP during initialization of AVF interface is not re-enabling       |
+|    |                                         | interface link via i40e driver to up.                                                                     |
+|    |                                         | CSIT implemented `workaround for AVF interface <https://gerrit.fd.io/r/c/csit/+/29086>`_ until fixed.     |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+|  7 | `CSIT-1760                              | All Mellanox / rdma driver tests are failing on LF testbed28 while successfully run on other LF testbeds. |
+|    | <https://jira.fd.io/browse/CSIT-1760>`_ |                                                                                                           |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+
+Root Cause Analysis for Performance Changes
+-------------------------------------------
+
+List of RCAs in |csit-release| for VPP performance changes:
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| #  | JiraID                                  | Issue Description                                                                                         |
++====+=========================================+===========================================================================================================+
+|  1 |                                         |                                                                                                           |
+|    |                                         |                                                                                                           |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+