Report: update Hoststack release notes
[csit.git] / docs / report / vpp_performance_tests / csit_release_notes.rst
index 85cbd7b..2e4377f 100644 (file)
-CSIT Release Notes\r
-==================\r
-\r
-Changes in CSIT |release|\r
--------------------------\r
-\r
-#. Added VPP performance tests\r
-\r
-   - **Container Topologies Orchestrated by K8s with VPP memif tests**\r
-\r
-   - Added tests with VPP in L2 Cross-Connect and Bridge-Domain\r
-     configurations containers, with service chain topologies orchestrated by\r
-     Kubernetes. Added following forwarding topologies: i) "Parallel" with\r
-     packets flowing from NIC via VPP to container and back to VPP and NIC;\r
-     ii) "Chained" a.k.a. "Snake" with packets flowing via VPP to container,\r
-     back to VPP, to next container, back to VPP and so on until the last\r
-     container in chain, then back to VPP and NIC; iii) "Horizontal" with\r
-     packets flowing via VPP to container, then via "horizontal" memif to\r
-     next container, and so on until the last container, then back to VPP and\r
-     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 tests**\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 tests**\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 improvements\r
-\r
-     - **Framework optimizations**\r
-\r
-       - Ability to run CSIT framework on ARM architecture;\r
-\r
-       - Overall stability improvements;\r
-\r
-Performance Changes\r
--------------------\r
-\r
-Substantial changes in measured packet throughput have been observed in a\r
-number of CSIT |release| tests listed below. Relative changes for this release\r
-are calculated against the test results listed in CSIT |release-1| report. The\r
-comparison is calculated between the mean values based on collected and\r
-archived test results' samples for involved VPP releases. Standard deviation\r
-has been also listed for CSIT |release|.\r
-\r
-NDR Throughput: Best 20 Changes\r
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: ../../../../_build/_static/vpp/performance-changes-ndr-1t1c-top.csv\r
-\r
-.. only:: latex\r
-\r
-   .. raw:: latex\r
-\r
-      \makeatletter\r
-      \csvset{\r
-        perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{4cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead},\r
-      }\r
-      \makeatother\r
-\r
-      {\tiny\r
-      \csvautobooklongtable[separator=comma,\r
-        respect all,\r
-        no check column count,\r
-        perfimprovements column width=1cm,\r
-        late after line={\\\hline},\r
-        late after last line={\end{longtable}}\r
-        ]{../_build/_static/vpp/performance-changes-ndr-1t1c-top.csv}\r
-      }\r
-\r
-NDR Throughput: Worst 20 Changes\r
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: ../../../../_build/_static/vpp/performance-changes-ndr-1t1c-bottom.csv\r
-\r
-.. only:: latex\r
-\r
-   .. raw:: latex\r
-\r
-      \makeatletter\r
-      \csvset{\r
-        perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{4cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead},\r
-      }\r
-      \makeatother\r
-\r
-      {\tiny\r
-      \csvautobooklongtable[separator=comma,\r
-        respect all,\r
-        no check column count,\r
-        perfimprovements column width=1cm,\r
-        late after line={\\\hline},\r
-        late after last line={\end{longtable}}\r
-        ]{../_build/_static/vpp/performance-changes-ndr-1t1c-bottom.csv}\r
-      }\r
-\r
-.. only:: html\r
-\r
-      NDR Throughput: All Changes\r
-      ~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-      Complete results for all NDR tests are available in a CSV and pretty\r
-      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
-        - `csv format for 4t4c <../../_static/vpp/performance-changes-ndr-4t4c-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
-        - `pretty ASCII format for 4t4c <../../_static/vpp/performance-changes-ndr-4t4c-full.txt>`_.\r
-\r
-PDR Throughput: Best 20 Changes\r
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: ../../../../_build/_static/vpp/performance-changes-pdr-1t1c-top.csv\r
-\r
-.. only:: latex\r
-\r
-   .. raw:: latex\r
-\r
-      \makeatletter\r
-      \csvset{\r
-        perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{4cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead},\r
-      }\r
-      \makeatother\r
-\r
-      {\tiny\r
-      \csvautobooklongtable[separator=comma,\r
-        respect all,\r
-        no check column count,\r
-        perfimprovements column width=1cm,\r
-        late after line={\\\hline},\r
-        late after last line={\end{longtable}}\r
-        ]{../_build/_static/vpp/performance-changes-pdr-1t1c-top.csv}\r
-      }\r
-\r
-PDR Throughput: Worst 20 Changes\r
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: ../../../../_build/_static/vpp/performance-changes-pdr-1t1c-bottom.csv\r
-\r
-.. only:: latex\r
-\r
-   .. raw:: latex\r
-\r
-      \makeatletter\r
-      \csvset{\r
-        perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{4cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead},\r
-      }\r
-      \makeatother\r
-\r
-      {\tiny\r
-      \csvautobooklongtable[separator=comma,\r
-        respect all,\r
-        no check column count,\r
-        perfimprovements column width=1cm,\r
-        late after line={\\\hline},\r
-        late after last line={\end{longtable}}\r
-        ]{../_build/_static/vpp/performance-changes-pdr-1t1c-bottom.csv}\r
-      }\r
-\r
-.. only:: html\r
-\r
-      PDR Throughput: All Changes\r
-      ~~~~~~~~~~~~~~~~~~~~~~~~~~~\r
-\r
-            Complete results for all PDR tests are available in a CSV and pretty\r
-            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
-              - `csv format for 4t4c <../../_static/vpp/performance-changes-pdr-4t4c-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
-              - `pretty ASCII format for 4t4c <../../_static/vpp/performance-changes-pdr-4t4c-full.txt>`_.\r
-\r
-Measured improvements are in line with VPP code optimizations listed in\r
-`VPP-17.10 release notes\r
-<https://docs.fd.io/vpp/17.10/release_notes_1710.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 NDR discovery test failures on x520.   | CSIT-750   | Suspected issue with HW combination of X710-X520 in LF          |\r
-|   |                                                 |            | infrastructure. Issue can't be replicated outside LF.           |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 3 | VPP in 2t2c setups - large variation            | CSIT-568   | Suspected NIC firmware or DPDK driver issue affecting NDR       |\r
-|   | of discovered NDR throughput values across      |            | throughput. Applies to XL710 and X710 NICs, x520 NICs are fine. |\r
-|   | multiple test runs with xl710 and x710 NICs.    |            |                                                                 |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 4 | Lower than expected NDR throughput with         | CSIT-569   | 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
+Release Notes
+=============
+
+Changes in |csit-release|
+-------------------------
+
+#. VPP PERFORMANCE TESTS
+
+   - **Intel Xeon 2n-skx, 3n-skx and 2n-clx 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, clx ucode 0x500002c), done 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
+     added in subsequent maintenance report version(s) once the issue
+     is resolved. 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 MCX556A-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.
+
+   - **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.
+
+   - **General Code Housekeeping**: Ongoing RF keywords optimizations,
+     removal of redundant RF keywords and aligning of suite/test
+     setup/teardowns.
+
+
+#. 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`.
+
+.. raw:: latex
+
+    \clearpage
+
+.. _vpp_known_issues:
+
+Known Issues
+------------
+
+List of known issues in |csit-release| for VPP performance tests:
+
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| #  | 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>`_ |                                                                                                           |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 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.        |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+