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=85cbd7b2035f5240613a195fb77cb53588c96c0c;hb=7577a3ff000ba4c61394bc49754a257fbb3d31ef;hpb=3b4e1e9b779fd3865714681cc224226b5804c546
diff --git a/docs/report/vpp_performance_tests/csit_release_notes.rst b/docs/report/vpp_performance_tests/csit_release_notes.rst
index 85cbd7b203..377bd30d3f 100644
--- a/docs/report/vpp_performance_tests/csit_release_notes.rst
+++ b/docs/report/vpp_performance_tests/csit_release_notes.rst
@@ -4,230 +4,147 @@ CSIT Release Notes
Changes in CSIT |release|
-------------------------
-#. Added VPP performance tests
+#. **VPP performance tests**
- - **Container Topologies Orchestrated by K8s with VPP memif tests**
+ - *MRR tests* - New Maximum Receive Rate tests measure the packet
+ forwarding rate under the maximum load offered by traffic
+ generator over a set trial duration, regardless of packet loss.
+ MRR tests are used for continuous performance trending and for
+ comparison between releases.
- - 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;.
+ - *Service Chaining with SRv6* - New SRv6 (Segment Routing IPv6) proxy
+ tests measure performance of SRv6 Endpoint fronting SR-unaware
+ appliance via masquerading (End.AM), dynamic proxy (End.AD) or
+ static proxy (End.AS) SR functions.
- - **VPP TCP/IP stack**
+#. **Presentation and Analytics Layer**
- - Added tests for VPP TCP/IP stack using VPP built-in HTTP server.
- WRK traffic generator is used as a client-side;
+ - *Performance trending* - Added continuous performance trending and
+ analysis. New Performance Trending and Performance Analysis jobs
+ executed regular throughput tests, with results being subsequently
+ analysed and trend and anomalies summarized and presented in VPP
+ Performance Dashboard and trendline graphs.
- - **SRv6 tests**
+#. **Test Framework Optimizations**
- - 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;
+ - *Performance tests efficiency* - Qemu build/install optimizations,
+ warmup phase handling, vpp restart handling. Resulted in improved
+ stability and reduced total execution time by 30% for single pkt
+ size e.g. 64B/78B.
- - **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;
+ - *General code housekeeping* - ongoing RF keywords optimizations,
+ removal of redundant RF keywords.
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
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Relative performance changes in measured packet throughput in CSIT
+|release| are calculated against the results from CSIT |release-1|
+report. 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 repeatibility, 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 repeatibility vary between the test cases.
-.. only:: html
+NDR Changes
+~~~~~~~~~~~
- .. csv-table::
- :align: center
- :file: ../../../../_build/_static/vpp/performance-changes-ndr-1t1c-top.csv
+NDR small packet throughput changes between releases are available in a
+CSV and pretty ASCII formats:
-.. only:: latex
+ - `csv format for 1t1c <../_static/vpp/performance-changes-ndr-1t1c-full.csv>`_,
+ - `csv format for 2t2c <../_static/vpp/performance-changes-ndr-2t2c-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>`_.
- .. raw:: latex
+.. note::
- \makeatletter
- \csvset{
- perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{4cm} m{#1} m{#1} m{#1} m{#1} m{#1}}\csv@tablehead},
- }
- \makeatother
+ Test results have been generated by
+ `FD.io test executor vpp performance jobs`_ with Robot Framework result
+ files csit-vpp-perf-|srelease|-\*.zip `archived here <../_static/archive/>`_.
- {\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
+PDR Changes
+~~~~~~~~~~~
- .. csv-table::
- :align: center
- :file: ../../../../_build/_static/vpp/performance-changes-ndr-1t1c-bottom.csv
+NDR small packet throughput changes between releases are available in a
+CSV and pretty ASCII formats:
-.. only:: latex
+ - `csv format for 1t1c <../_static/vpp/performance-changes-pdr-1t1c-full.csv>`_,
+ - `csv format for 2t2c <../_static/vpp/performance-changes-pdr-2t2c-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>`_.
- .. raw:: latex
+.. note::
- \makeatletter
- \csvset{
- perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{m{4cm} 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}
- }
+ Test results have been generated by
+ `FD.io test executor vpp performance jobs`_ with Robot Framework result
+ files csit-vpp-perf-|srelease|-\*.zip `archived here <../_static/archive/>`_.
-.. only:: html
+MRR Changes
+~~~~~~~~~~~
- NDR Throughput: All Changes
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+MRR small packet throughput changes between releases are available in a
+CSV and pretty ASCII formats:
- Complete results for all NDR tests are available in a CSV and pretty
- ASCII formats:
+ - `csv format for 1t1c <../_static/vpp/performance-changes-mrr-1t1c-full.csv>`_,
+ - `csv format for 2t2c <../_static/vpp/performance-changes-mrr-2t2c-full.csv>`_,
+ - `csv format for 4t4c <../_static/vpp/performance-changes-mrr-4t4c-full.csv>`_,
+ - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-mrr-1t1c-full.txt>`_,
+ - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-mrr-2t2c-full.txt>`_,
+ - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-mrr-4t4c-full.txt>`_.
- - `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>`_.
+.. note::
-PDR Throughput: Best 20 Changes
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Test results have been generated by
+ `FD.io test executor vpp mrr jobs `_
+ with Robot Framework result files csit-vpp-perf-mrr-daily-master__*__output.xml.gz
+ `archived here `_.
-.. 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{4cm} 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-pdr-1t1c-top.csv}
- }
-
-PDR Throughput: Worst 20 Changes
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Throughput Trending
+-------------------
-.. 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{4cm} 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-pdr-1t1c-bottom.csv}
- }
+In addition to reporting throughput changes between VPP releases, CSIT
+provides continuous performance trending for VPP master branch:
-.. only:: html
+#. `VPP Performance Dashboard `_
+ - per VPP test case throughput trend, trend compliance and summary of
+ detected anomalies.
- PDR Throughput: All Changes
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+#. `Trending Methodology `_
+ - throughput test metrics, trend calculations and anomaly
+ classification (progression, regression, outlier).
- 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
-`_.
+#. `Trendline Graphs `_
+ - per VPP build MRR throughput measurements against the trendline
+ with anomaly highlights, with associated CSIT test jobs.
Known Issues
------------
-Here is the list of known issues in CSIT |release| for VPP performance tests:
+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. |
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 1 | Vic1385 and Vic1227 low performance. | VPP-664 | Low NDR performance. |
-| | | | |
+| 2 | Lower than expected NDR throughput of DPDK | CSIT-571 | Suspected NIC firmware or DPDK driver issue affecting NDR and |
+| | testpmd and VPP L2 path NDR throughput with | | PDR throughput on XL710 and X710 NICs. |
+| | xl710 and x710 NICs, compared to x520 NICs. | | |
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 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 | Tagged Ethernet dot1q and dot1ad L2 path | CSIT-1066 | Tagged Ethernet dot1q and dot1ad L2 path throughput regression: |
+| | throughput regression. | | NDR -2%..-5%, PDR -2%..-6%, MRR. Affects l2xc and l2bd |
+| | | | performance tests. |
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 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 | IPSec (software, no QAT HW) throughput | CSIT-1064 | IPSec throughput regression: NDR -3%..-8%, PDR -2%..-8%, MRR |
+| | regression. | | -3%..-7%. Affects IPSec SW tests, QAT HW tests not affected. |
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+
-| 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. |
+| 5 | High failure rate of creating working container | CSIT-1065 | About 20% of orchestrated container topology tests failing data |
+| | topologies with K8s/Ligato orchestration. | | plane verification indicating configuration issue. Suspected |
+| | | | issue with Ligato vpp-agent. |
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+