Report: add geneve to perf release notes
[csit.git] / docs / report / vpp_performance_tests / csit_release_notes.rst
index 9c65143..16a7db3 100644 (file)
@@ -4,233 +4,127 @@ Release Notes
 Changes in |csit-release|
 -------------------------
 
-#. **VPP Performance Tests**
+#. VPP PERFORMANCE TESTS
 
-   - **MRR Throughput**: MRR (Maximum Receive Rate) test code has now
-     configurable trial duration and number of consecutive executions.
-     Coverage of MRR tests has been extended across more test
-     scenarios. MRR tests are used for continuous performance trending
-     and for comparison between VPP releases.
+   - CSIT test environment is versioned, see
+     :ref:`test_environment_versioning`.
 
-   - **MLRsearch Throughput**: MLRsearch algorithm has been introduced
-     for all NDR and PDR throughput tests. All tests that previously
-     used binary search got converted to MLRsearch. Coverage of NDR/PDR
-     tests has been extended across more test scenarios.
+   - 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`.
 
-   - **L2patch Tests**: Tests measure performance of VPP L2patch, the
-     fastest L2 forwarding path implemented in VPP, that cross-links
-     RX and TX of two physical interfaces.
+   - **GENEVE tests**: Added VPP performance tests for GENEVE tunnels.
 
-   - **2-Node Tests**: A new baseline set of 2-node tests covering base
-     ip4, ip6, l2patch, l2bd, l2xc, running on new Xeon Skylake
-     testbeds.
+     - See :ref:`geneve_methodology` for more details.
 
-   - **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.
+   - **NAT44 tests**: Adapted existing and added new tests.
 
-   - **Simultaneous Multi-Threading**: SMT-aware detection of server
-     processor operation mode (HyperThreading enabled/disabled) with
-     associated compute resource configuration including thread
-     affinity, number of Rx queues and DPDK I/O mbufs. Tests are
-     automatically tagged during execution to indicate executed thread
-     configuration.
+     - 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.
 
-   - **Intel Xeon Skylake Support**: Support for 2-Node and 3-Node
-     physical testbed topologies based on the new SuperMirco servers
-     each with two Intel Xeon Skylake Platinum processors. Full
-     Ansible playbooks refactor for quick server (re)installation and
-     reference pointers of configuration.
+     - 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.
 
-#. **Presentation and Analytics Layer**
+     - Added new NAT44 endpoint-dependent mode CPS tests that measure
+       connections per second with usage of TRex in stateful mode.
+       UPD packet size is 64 bytes. Size of TCP control packets
+       is not configurable, please ignore the -64b- part of test names.
 
-   - **Performance trending**: Further improved continuous performance
-     trending with anomaly detection and analysis.
+     - Added new NAT44 endpoint-dependent mode PPS tests that measure
+       packets per second (control and data together) with usage of TRex
+       in stateful mode. UPD packet size is 64 bytes. Size of TCP
+       data packets is governed by the default MSS value, so most data packets
+       are 1460 bytes long, please ignore the -64b- part of test names.
 
-#. **Test Framework Optimizations**
+     - See :ref:`nat44_methodology` for more details.
 
-   - **General Code Housekeeping**: Ongoing RF keywords optimizations,
-     removal of redundant RF keywords.
-
-Performance Changes
--------------------
-
-Relative performance changes in measured NDR, PDR and MRR packet
-throughput in |csit-release| are calculated against the test results
-from |csit-release-1| report, for tests running on 3-Node Intel Xeon
-Haswell testbeds (3n-hsw) in 1-core, 2-core and 4-core (MRR only)
-configurations.
-
-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 CSV and pretty
-ASCII formats:
-
-  - `CSV 1t1c NDR changes <../_static/vpp/performance-changes-1t1c-ndr.csv>`_,
-  - `CSV 2t2c NDR changes <../_static/vpp/performance-changes-2t2c-ndr.csv>`_,
-  - `ASCII 1t1c NDR changes <../_static/vpp/performance-changes-1t1c-ndr.txt>`_,
-  - `ASCII 2t2c NDR changes <../_static/vpp/performance-changes-2t2c-ndr.txt>`_.
-
-.. note::
-
-    Test results have been generated by
-    `FD.io test executor vpp performance job 3n-hsw`_,
-    with RF result
-    files csit-vpp-perf-|srelease|-\*.zip
-    `archived here <../_static/archive/>`_.
-
-PDR Changes
-~~~~~~~~~~~
-
-PDR throughput changes between releases are available in CSV and pretty
-ASCII formats:
-
-  - `CSV 1t1c PDR changes <../_static/vpp/performance-changes-1t1c-pdr.csv>`_,
-  - `CSV 2t2c PDR changes <../_static/vpp/performance-changes-2t2c-pdr.csv>`_,
-  - `ASCII 1t1c PDR changes <../_static/vpp/performance-changes-1t1c-pdr.txt>`_,
-  - `ASCII 2t2c PDR changes <../_static/vpp/performance-changes-2t2c-pdr.txt>`_.
-
-.. note::
-
-    Test results have been generated by
-    `FD.io test executor vpp performance job 3n-hsw`_,
-    with RF result
-    files csit-vpp-perf-|srelease|-\*.zip
-    `archived here <../_static/archive/>`_.
-
-MRR Changes
-~~~~~~~~~~~
-
-MRR throughput changes between releases are available in CSV and pretty
-ASCII formats:
+   - **IPSec async mode tests**: Added VPP performance tests for async crypto
+     engine.
 
-  - `CSV 1t1c MRR changes <../_static/vpp/performance-changes-1t1c-mrr.csv>`_,
-  - `CSV 2t2c MRR changes <../_static/vpp/performance-changes-2t2c-mrr.csv>`_,
-  - `CSV 4t4c MRR changes <../_static/vpp/performance-changes-4t4c-mrr.csv>`_,
-  - `ASCII 1t1c MRR changes <../_static/vpp/performance-changes-1t1c-mrr.txt>`_,
-  - `ASCII 2t2c MRR changes <../_static/vpp/performance-changes-2t2c-mrr.txt>`_,
-  - `ASCII 4t4c MRR changes <../_static/vpp/performance-changes-4t4c-mrr.txt>`_.
+   - **AMD 2n-zn2 testbed**: New physical testbed type installed in
+     FD.io CSIT, with VPP and DPDK performance data added to CSIT
+     trending and this report.
 
-.. note::
+   - **AMD 2n-tx2 testbed**: New physical testbed type installed in
+     FD.io CSIT, with VPP and DPDK performance data added to CSIT
+     trending and this report.
 
-    Test results have been generated by
-    `FD.io test executor vpp performance job 3n-hsw`_,
-    with RF result
-    files csit-vpp-perf-|srelease|-\*.zip
-    `archived here <../_static/archive/>`_.
+#. TEST FRAMEWORK
 
-Skx vs. Hsw Comparison
-----------------------
+   - **TRex ASTF**: Added capability to run TRex in advanced stateful mode.
 
-Relative performance comparison in measured NDR, PDR and MRR packet
-throughput is calculated for tests executed on 3-Node Skylake (3n-skx)
-and 3-Node Haswell (3n-hsw) physical testbed types in 1-core
-configurations.
+   - **CSIT PAPI support**: Due to issues with PAPI performance, VAT is
+     still used in CSIT for all VPP scale tests. See known issues below.
 
-NDR Comparison
-~~~~~~~~~~~~~~
-
-NDR comparison between testbed types is available in CSV and pretty
-ASCII formats:
-
-  - `CSV 1c NDR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-ndr.csv>`_,
-  - `ASCII 1c NDR comparison <../_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 RF result
-    files csit-vpp-perf-|srelease|-\*.zip
-    `archived here <../_static/archive/>`_.
-
-PDR Comparison
-~~~~~~~~~~~~~~
-
-PDR comparison between testbed types is available in CSV and pretty
-ASCII formats:
-
-  - `CSV 1c PDR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.csv>`_,
-  - `ASCII 1c PDR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.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 RF result
-    files csit-vpp-perf-|srelease|-\*.zip
-    `archived here <../_static/archive/>`_.
-
-MRR Comparison
-~~~~~~~~~~~~~~
-
-MRR comparison between testbed types is available in CSV and pretty
-ASCII formats:
-
-  - `CSV 1c MRR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.csv>`_,
-  - `ASCII 1c MRR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.txt>`_.
-
-.. note::
+   - **General Code Housekeeping**: Ongoing RF keywords optimizations,
+     removal of redundant RF keywords and aligning of suite/test
+     setup/teardowns.
 
-    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 RF result
-    files csit-vpp-perf-|srelease|-\*.zip
-    `archived here <../_static/archive/>`_.
+   - **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.
 
-Throughput Trending
--------------------
+#. PRESENTATION AND ANALYTICS LAYER
 
-In addition to reporting throughput changes between VPP releases, CSIT
-provides continuous performance trending for VPP master branch:
+   - **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.
 
-#. `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 - 1core deltas: NDR -32%, PDR -33%, |
-|   | regression.                                     |            | MRR -38%. Affects IPSec HW Scale 1000tnl tests with Int mode.   |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 4 | Lower than expected 64B NDR and PDR             | CSIT-1242  | NDR and PDR regressions: ip4base -29%.                          |
-|   | throughput in VPP ip4base tests                 |            |                                                                 |
-|   | with xl710 NIC in 3n-hsw testbeds.              |            |                                                                 |
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| #  | 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 | `CSIT-1771                              | IPv4 IPSEC 9000B packet tests had been failing when chained buffers were not supported.                   |
+|    | <https://jira.fd.io/browse/CSIT-1771>`_ | This has been fixed on VPP side, but CSIT still needs to re-enable jumbo tests.                           |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+|  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 |                                         |                                                                                                           |
+|    |                                         |                                                                                                           |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+