report 1807: list and table formatting fixes.
[csit.git] / docs / report / vpp_performance_tests / csit_release_notes.rst
index 17003bc..f6887e1 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
-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
-\r
+Release Notes
+=============
+
+Changes in |csit-release|
+-------------------------
+
+#. **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.
+
+   - **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.
+
+   - **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.
+
+   - **2-Node Tests**: A new baseline set of 2-node tests covering base
+     ip4, ip6, l2patch, l2bd, l2xc, running on new Xeon Skylake
+     testbeds.
+
+   - **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.
+
+   - **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.
+
+   - **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.
+
+#. **Presentation and Analytics Layer**
+
+   - **Performance trending**: Further improved continuous performance
+     trending with anomaly detection and analysis.
+
+#. **Test Framework Optimizations**
+
+   - **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:
+
+  - `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>`_.
+
+.. 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/>`_.
+
+Skx vs. Hsw Comparison
+----------------------
+
+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.
+
+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::
+
+    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/>`_.
+
+Throughput Trending
+-------------------
+
+In addition to reporting throughput changes between VPP releases, CSIT
+provides continuous performance trending for VPP master branch:
+
+#. `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.
+
+#. `Trending Methodology <https://docs.fd.io/csit/master/trending/methodology/index.html>`_
+   - throughput test metrics, trend calculations and anomaly
+   classification (progression, regression, outlier).
+
+#. `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.
+
+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: NDR -28%..-31%, PDR -28%..-31%,    |
+|   | regression.                                     |            | MRR -40%. Affects IPSec HW Scale 1000tnl tests with Int mode.   |
++---+-------------------------------------------------+------------+-----------------------------------------------------------------+