X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=docs%2Freport%2Fvpp_performance_tests%2Fcsit_release_notes.rst;h=377bd30d3fc957a47f9d43d561ee2928e6850a4e;hp=a61af661ebd00445631d6d7bb9cc08b4733c3a16;hb=0189b942c60c000917639178f390fdc3bbcd574d;hpb=4185e3a96ea805ed7d2b287c21eb160bff6ef856 diff --git a/docs/report/vpp_performance_tests/csit_release_notes.rst b/docs/report/vpp_performance_tests/csit_release_notes.rst index a61af661eb..52ce2ef09e 100644 --- a/docs/report/vpp_performance_tests/csit_release_notes.rst +++ b/docs/report/vpp_performance_tests/csit_release_notes.rst @@ -1,233 +1,164 @@ -CSIT Release Notes -================== - -Changes in CSIT |release| -------------------------- - -#. Added VPP performance tests - - - **Container Topologies Orchestrated by K8s with VPP memif tests** - - - Added tests with VPP in L2 Cross-Connect and Bridge-Domain - configurations containers, with service chain topologies orchestrated by - Kubernetes. Added following forwarding topologies: i) "Parallel" with - packets flowing from NIC via VPP to container and back to VPP and NIC; - ii) "Chained" a.k.a. "Snake" with packets flowing via VPP to container, - back to VPP, to next container, back to VPP and so on until the last - container in chain, then back to VPP and NIC; iii) "Horizontal" with - packets flowing via VPP to container, then via "horizontal" memif to - next container, and so on until the last container, then back to VPP and - NIC;. - - - **VPP TCP/IP stack** - - - Added tests for VPP TCP/IP stack using VPP built-in HTTP server. - WRK traffic generator is used as a client-side; - - - **SRv6 tests** - - - Initial SRv6 (Segment Routing IPv6) tests verifying performance of - IPv6 and SRH (Segment Routing Header) encapsulation, decapsulation, - lookups and rewrites based on configured End and End.DX6 SRv6 egress - functions; - - - **IPSecSW tests** - - - SW computed IPSec encryption with AES-GCM, CBC-SHA1 ciphers, in - combination with IPv4 routed-forwarding; - -#. Presentation and Analytics Layer - - - Added throughput speedup analysis for multi-core and multi-thread - VPP tests into Presentation and Analytics Layer (PAL) for automated - CSIT test results analysis; - -#. Other improvements - - - **Framework optimizations** - - - Ability to run CSIT framework on ARM architecture; - - - Overall stability improvements; - -Performance Changes -------------------- - -Substantial changes in measured packet throughput have been observed in a -number of CSIT |release| tests listed below. Relative changes for this release -are calculated against the test results listed in CSIT |release-1| report. The -comparison is calculated between the mean values based on collected and -archived test results' samples for involved VPP releases. Standard deviation -has been also listed for CSIT |release|. - -NDR Throughput: Best 20 Changes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. only:: html - - .. csv-table:: - :align: center - :file: ../../../_build/_static/vpp/performance-changes-ndr-1t1c-top.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{5cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead}, - } - \makeatother - - {\tiny - \csvautobooklongtable[separator=comma, - respect all, - no check column count, - perfimprovements column width=1cm, - late after line={\\\hline}, - late after last line={\end{longtable}} - ]{../_build/_static/vpp/performance-changes-ndr-1t1c-top.csv} - } - -NDR Throughput: Worst 20 Changes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. only:: html - - .. csv-table:: - :align: center - :file: ../../../_build/_static/vpp/performance-changes-ndr-1t1c-bottom.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{6cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead}, - } - \makeatother - - {\tiny - \csvautobooklongtable[separator=comma, - respect all, - no check column count, - perfimprovements column width=1cm, - late after line={\\\hline}, - late after last line={\end{longtable}} - ]{../_build/_static/vpp/performance-changes-ndr-1t1c-bottom.csv} - } - -.. only:: html - - NDR Throughput: All Changes - ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Complete results for all NDR tests are available in a CSV and pretty - ASCII formats: - - - `csv format for 1t1c <../_static/vpp/performance-changes-ndr-1t1c-full.csv>`_, - - `csv format for 2t2c <../_static/vpp/performance-changes-ndr-2t2c-full.csv>`_, - - `csv format for 4t4c <../_static/vpp/performance-changes-ndr-4t4c-full.csv>`_, - - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-ndr-1t1c-full.txt>`_, - - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-ndr-2t2c-full.txt>`_, - - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-ndr-4t4c-full.txt>`_. - -PDR Throughput: Best 20 Changes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. only:: html - - .. csv-table:: - :align: center - :file: ../../../_build/_static/vpp/performance-changes-pdr-1t1c-top.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{5cm} m{#2} m{#2} m{#2} m{#2} m{#2}}\csv@tablehead}, - } - \makeatother - - {\tiny - \csvautobooklongtable[separator=comma, - respect all, - no check column count, - perfimprovements column width=1cm, - late after line={\\\hline}, - late after last line={\end{longtable}} - ]{../_build/_static/vpp/performance-changes-pdr-1t1c-top.csv} - } - -PDR Throughput: Worst 20 Changes -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -.. only:: html - - .. csv-table:: - :align: center - :file: ../../../_build/_static/vpp/performance-changes-pdr-1t1c-bottom.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{6cm} m{#2} m{#2} m{#2} m{#2} m{#2}}\csv@tablehead}, - } - \makeatother - - {\tiny - \csvautobooklongtable[separator=comma, - respect all, - no check column count, - perfimprovements column width=1cm, - late after line={\\\hline}, - late after last line={\end{longtable}} - ]{../_build/_static/vpp/performance-changes-pdr-1t1c-bottom.csv} - } - -.. only:: html - - PDR Throughput: All Changes - ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Complete results for all PDR tests are available in a CSV and pretty - ASCII formats: - - - `csv format for 1t1c <../_static/vpp/performance-changes-pdr-1t1c-full.csv>`_, - - `csv format for 2t2c <../_static/vpp/performance-changes-pdr-2t2c-full.csv>`_, - - `csv format for 4t4c <../_static/vpp/performance-changes-pdr-4t4c-full.csv>`_, - - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-pdr-1t1c-full.txt>`_, - - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-pdr-2t2c-full.txt>`_, - - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-pdr-4t4c-full.txt>`_. - -Measured improvements are in line with VPP code optimizations listed in -`VPP-17.10 release notes -`_. - -Known Issues ------------- - -Here is the list of known issues in CSIT |release| for VPP performance tests: - -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| # | Issue | Jira ID | Description | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 1 | Vic1385 and Vic1227 low performance. | VPP-664 | Low NDR performance. | -| | | | | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 2 | Sporadic NDR discovery test failures on x520. | CSIT-750 | Suspected issue with HW combination of X710-X520 in LF | -| | | | infrastructure. Issue can't be replicated outside LF. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 3 | VPP in 2t2c setups - large variation | CSIT-568 | Suspected NIC firmware or DPDK driver issue affecting NDR | -| | of discovered NDR throughput values across | | throughput. Applies to XL710 and X710 NICs, x520 NICs are fine. | -| | multiple test runs with xl710 and x710 NICs. | | | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 4 | Lower than expected NDR throughput with | CSIT-569 | Suspected NIC firmware or DPDK driver issue affecting NDR and | -| | xl710 and x710 NICs, compared to x520 NICs. | | PDR throughput. Applies to XL710 and X710 NICs. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ +.. _vpp_performance_tests_release_notes: + +Release Notes +============= + +Changes in |csit-release| +------------------------- + +#. VPP PERFORMANCE TESTS + + - **Regressions with DPDK drivers**: Change from DPDK v21.08 to DPDK + v21.11 introduced regression across all tests using dpdk + drivers (with dpdk_plugin loaded). Compared to previous VPP + release performance drop varies in the range of -15% to -6%, + depending on test. It is related to updated MTU checks within + DPDK code and associated VPP code changes. See + `VPP v2202 release notes `_ + and :ref:`vpp_known_issues`. + + - **Number of CSIT 9000B frame tests failing**: tests with higher + encapsulation overhead are failing due to exceeding default + Ethernet Maximum Frame Size value that has been reduced by MTU + related VPP code changes. See + `VPP v2202 release notes `_ + and :ref:`vpp_known_issues`. + + - **Intel Xeon Ice Lake**: Performance test data for these platforms + is now provided by testbeds newly installed in FD.io CSIT labs. + For details about the physical setup see + :ref:`physical_testbeds_2n_icx` and + :ref:`physical_testbeds_3n_icx`. + + - **Reduction of tests**: Removed certain test variations executed + iteratively for the report (as well as in daily and weekly + trending) due to physical testbeds overload. + +#. TEST FRAMEWORK + + - **CSIT test environment** version has been updated to ver. 9, see + :ref:`test_environment_versioning`. + + - **CSIT PAPI support**: Due to issues with PAPI performance, and + deprecation of VAT, VPP CLI is used in CSIT for many VPP scale + tests. See :ref:`vpp_known_issues`. + + - **General Code Housekeeping**: Ongoing code optimizations and bug + fixes. + +#. PRESENTATION AND ANALYTICS LAYER + + - **Graphs improvements**: Updated Packet Latency graphs, + see :ref:`latency_methodology`. + +.. raw:: latex + + \clearpage + +.. _vpp_known_issues: + +Known Issues +------------ + +New +___ + ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| # | JiraID | Issue Description | ++====+=========================================+===========================================================================================================+ +| 1 | `CSIT-1799 | All NAT44-ED 16M scale tests fail while setting NAT44 address range. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 2 | `CSIT-1800 | All Geneve L3 mode scale tests (1024 tunnels) are failing. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 3 | `CSIT-1801 | 9000B payload frames not forwarded over tunnels due to violating supported Max Frame Size (VxLAN, LISP, | +| | `_ | SRv6). | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 4 | `CSIT-1808 | All tests with 9000B payload frames not forwarded over memif interfaces. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 5 | `CSIT-1809 | All tests with 9000B payload frames not forwarded over vhostuser interfaces. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 6 | `CSIT-1802 | AF-XDP - NDR tests failing from time to time. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 7 | `CSIT-1803 | 3n-icx testbeds (Icelake): all IMIX aes128cbc-hmac512sha tests are failing due to excessive packet loss. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 8 | `CSIT-1804 | 3n-tsh testbed (Taishan): NDR tests failing from time to time. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 9 | `CSIT-1805 | 3n-skx testbeds (Skylake): all hoststack quic vppecho scale tests are failing. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 10 | `CSIT-1806 | 3n-skx testbeds (Skylake): all LISP ip6-ip6 tests are failing due to 100% drops in one direction. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 11 | `CSIT-1810 | DPDK - performance regression with DPDK driver when Max Frame Size is set to less than 2023. | +| | `_ | | +| +-----------------------------------------+ | +| | `VPP-1876 | Worse performance with DPDK driver when MTU is set to 2022 or less. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ + + +Previous +________ + +Issues reported in previous releases which still affect the current results. + ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| # | JiraID | Issue Description | ++====+=========================================+===========================================================================================================+ +| 3 | `CSIT-1782 | Multicore AVF tests are failing when trying to create interface. | +| | `_ | Frequency is reduced by CSIT workaround, but occasional failures do still happen. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 4 | `CSIT-1671 | All CSIT scale tests can not use PAPI due to much slower performance compared to VAT/CLI (it takes much | +| | `_ | longer to program VPP). This needs to be addressed on the PAPI side. | +| +-----------------------------------------+ Currently, the time critical code uses VAT running large files with exec statements and CLI commands. | +| | `VPP-1763 | Still, we needed to reduce the number of scale tests run to keep overall duration reasonable. | +| | `_ | More improvements needed to achieve sufficient configuration speed. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 5 | `CSIT-1789 | IPSEC SW async scheduler tests show bad behavior. | +| | `_ | VPP code is not behaving correctly when crypto workers are the bottleneck. | +| +-----------------------------------------+ | +| | `VPP-1998 | | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 6 | `CSIT-1785 | NAT44ED tests failing to establish all TCP sessions. | +| | `_ | At least for max scale, in allotted time (limited by session 500s timeout) due to worse | +| +-----------------------------------------+ slow path performance than previously measured and calibrated for. | +| | `VPP-1972 | CSIT removed the max scale NAT tests to avoid this issue. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 7 | `CSIT-1791 | Performance regression in RDMA tests, due to CSIT environment changes. | +| | `_ | Two symptoms: 1. 10-20% regression across most tests. 2. DUT performance cap just below 38 Mpps. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ + +Fixed +_____ + +Issues reported in previous releases which were fixed in this release: + ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| # | JiraID | Issue Description | ++====+=========================================+===========================================================================================================+ +| 1 | `CSIT-1789 | AVF driver does not perform RSS in a deterministic way. | +| | `_ | VPP now uses the same RSS key with AVF driver as with DPDK driver. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 2 | `CSIT-1786 | IP4 and IP6 scale tests failing with no traffic forwarded. | +| | `_ | CSIT replaced the old single VAT command by file full of "exec" CLI commands executed by VAT. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ + +Root Cause Analysis for Performance Changes +------------------------------------------- + +List of RCAs in |csit-release| for VPP performance changes: + ++----+-----------------------------------------+------------------------------------------------------------+ +| # | JiraID | Issue Description | ++====+=========================================+============================================================+ +| 0 | | To be updated when descriptions in Jira tickets are ready. | ++----+-----------------------------------------+------------------------------------------------------------+