Report: update Hoststack release notes
[csit.git] / docs / report / vpp_performance_tests / csit_release_notes.rst
index 3434182..2e4377f 100644 (file)
-CSIT Release Notes\r
-==================\r
-\r
-Changes in CSIT |release|\r
--------------------------\r
-\r
-#. Test environment changes in VPP data plane performance tests:\r
-\r
-   - Further characterization and optimizations of VPP vhost-user and VM test\r
-     methodology and test environment;\r
-\r
-     - Tests with varying Qemu virtio queue (a.k.a. vring) sizes:\r
-       [vr256] default 256 descriptors, [vr1024] 1024 descriptors to\r
-       optimize for packet throughput;\r
-\r
-     - Tests with varying Linux :abbr:`CFS (Completely Fair Scheduler)`\r
-       settings: [cfs] default settings, [cfsrr1] :abbr:`CFS (Completely Fair\r
-       Scheduler)` RoundRobin(1) policy applied to all data plane threads\r
-       handling test packet path including all VPP worker threads and all Qemu\r
-       testpmd poll-mode threads;\r
-\r
-     - Resulting test cases are all combinations with [vr256,vr1024] and\r
-       [cfs,cfsrr1] settings;\r
-\r
-     - For more detail see performance results observations section in\r
-       this report;\r
-\r
-#. Code updates and optimizations in CSIT performance framework:\r
-\r
-   - Complete CSIT framework code revision and optimizations as descried\r
-     on CSIT wiki page `Design_Optimizations\r
-     <https://wiki.fd.io/view/CSIT/Design_Optimizations>`_.\r
-\r
-   - For more detail see the :ref:`CSIT Framework Design <csit-design>` section\r
-     in this report;\r
-\r
-#. Changes to CSIT driver for TRex Traffic Generator:\r
-\r
-   - Complete refactor of TRex CSIT driver;\r
-\r
-   - Introduction of packet traffic profiles to improve usability and\r
-     manageability of traffic profiles for a growing number of test\r
-     scenarios.\r
-\r
-   - Support for packet traffic profiles to test IPv4/IPv6 stateful and\r
-     stateless DUT data plane features;\r
-\r
-#. Added VPP performance tests\r
-\r
-   - **Linux Container VPP memif virtual interface tests**\r
-\r
-     - New VPP Memif virtual interface (shared memory interface) tests\r
-       with L2 Bridge-Domain switched-forwarding;\r
-\r
-   - **Stateful Security Groups**\r
-\r
-     - New m-thread m-core VPP stateful security-groups tests;\r
-\r
-   - **MAC-IP binding**\r
-\r
-     - New MACIP iACL single-thread single-core and m-thread m-core tests;\r
-\r
-     - Statistical analysis of repeatibility of results;\r
-\r
-Performance Improvements\r
-------------------------\r
-\r
-Substantial improvements in measured packet throughput have been observed in a\r
-number of CSIT |release| tests listed below, with relative increase of\r
-double-digit percentage points. Relative improvements for this release are\r
-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|. VPP-16.09 and VPP-17.01 numbers are\r
-provided for reference.\r
-\r
-NDR Throughput\r
-~~~~~~~~~~~~~~\r
-\r
-Non-Drop Rate Throughput discovery tests:\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: performance_improvements/performance_improvements_ndr_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{1.5cm} m{5cm} m{#1} m{#1} 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
-        ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_ndr_top.csv}\r
-      }\r
-\r
-\r
-PDR Throughput\r
-~~~~~~~~~~~~~~\r
-\r
-Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%:\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: performance_improvements/performance_improvements_pdr_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{1.5cm} m{5cm} m{#1} m{#1} 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
-        ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_pdr_top.csv}\r
-      }\r
-\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
-Other Performance Changes\r
--------------------------\r
-\r
-Other changes in measured packet throughput, with either minor relative increase\r
-or decrease, have been observed in a number of CSIT |release| tests listed\r
-below. Relative changes are calculated against the test results listed in CSIT\r
-|release-1| report.\r
-\r
-NDR Throughput\r
-~~~~~~~~~~~~~~\r
-\r
-Non-Drop Rate Throughput discovery tests:\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: performance_improvements/performance_improvements_ndr_low.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{1.5cm} m{5cm} m{#1} m{#1} 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
-        ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_ndr_low.csv}\r
-      }\r
-\r
-\r
-PDR Throughput\r
-~~~~~~~~~~~~~~\r
-\r
-Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%:\r
-\r
-.. only:: html\r
-\r
-   .. csv-table::\r
-      :align: center\r
-      :file: performance_improvements/performance_improvements_pdr_low.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{1.5cm} m{5cm} m{#1} m{#1} 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
-        ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_pdr_low.csv}\r
-      }\r
-\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 settings (BIOS, FW) 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 and PDR 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
-\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.        |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+