Changes in CSIT |release|\r
-------------------------\r
\r
-#. Added VPP performance tests\r
+#. **VPP performance tests**\r
\r
- - **Container Topologies Orchestrated by K8s with VPP memif tests**\r
+ - *MRR tests* - New Maximum Receive Rate tests measure the packet\r
+ forwarding rate under the maximum load offered by traffic\r
+ generator over a set trial duration, regardless of packet loss.\r
+ MRR tests are used for continuous performance trending and for\r
+ comparison between releases.\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
+ - *Service Chaining with SRv6* - New SRv6 (Segment Routing IPv6) proxy\r
+ tests measure performance of SRv6 Endpoint fronting SR-unaware\r
+ appliance via masquerading (End.AM), dynamic proxy (End.AD) or\r
+ static proxy (End.AS) SR functions.\r
\r
- - **VPP TCP/IP stack**\r
+#. **Presentation and Analytics Layer**\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
+ - *Performance trending* - Added continuous performance trending and\r
+ analysis. New Performance Trending and Performance Analysis jobs\r
+ executed regular throughput tests, with results being subsequently\r
+ analysed and trend and anomalies summarized and presented in VPP\r
+ Performance Dashboard and trendline graphs.\r
\r
- - **SRv6 tests**\r
+#. **Test Framework Optimizations**\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
+ - *Performance tests efficiency* - Qemu build/install optimizations,\r
+ warmup phase handling, vpp restart handling. Resulted in improved\r
+ stability and reduced total execution time by 30% for single pkt\r
+ size e.g. 64B/78B.\r
\r
- - **IPSecSW tests**\r
+ - *General code housekeeping* - ongoing RF keywords optimizations,\r
+ removal of redundant RF keywords.\r
\r
- - SW computed IPSec encryption with AES-GCM, CBC-SHA1 ciphers, in\r
- combination with IPv4 routed-forwarding;\r
+Performance Changes\r
+-------------------\r
\r
-#. Presentation and Analytics Layer\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
- - 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
+NDR Changes\r
+~~~~~~~~~~~\r
\r
-#. Other improvements\r
+NDR small packet throughput changes between releases are available in a\r
+CSV and pretty ASCII formats:\r
\r
- - **Framework optimizations**\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
- - Ability to run CSIT framework on ARM architecture;\r
+PDR Changes\r
+~~~~~~~~~~~\r
\r
- - Overall stability improvements;\r
+NDR small packet throughput changes between releases are available in a\r
+CSV and pretty ASCII formats:\r
\r
-Performance Improvements\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
-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|. Performance numbers since release\r
-VPP-16.09 are provided for reference.\r
+MRR Changes\r
+~~~~~~~~~~~\r
\r
-NDR Throughput\r
-~~~~~~~~~~~~~~\r
+MRR small packet throughput changes between releases are available in a\r
+CSV and pretty ASCII formats:\r
\r
-Non-Drop Rate Throughput discovery tests:\r
+ - `csv format for 1t1c <../_static/vpp/performance-changes-mrr-1t1c-full.csv>`_,\r
+ - `csv format for 2t2c <../_static/vpp/performance-changes-mrr-2t2c-full.csv>`_,\r
+ - `csv format for 4t4c <../_static/vpp/performance-changes-mrr-4t4c-full.csv>`_,\r
+ - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-mrr-1t1c-full.txt>`_,\r
+ - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-mrr-2t2c-full.txt>`_,\r
+ - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-mrr-4t4c-full.txt>`_.\r
\r
-.. only:: html\r
+Throughput Trending\r
+-------------------\r
\r
- .. csv-table::\r
- :align: center\r
- :file: performance_improvements/performance_improvements_ndr_top.csv\r
+In addition to reporting throughput changes between VPP releases, CSIT\r
+provides continuous performance trending for VPP master branch:\r
\r
-.. only:: latex\r
+#. `VPP Performance Dashboard <https://docs.fd.io/csit/master/trending/introduction/index.html>`_\r
+ - per VPP test case throughput trend, trend compliance and summary of\r
+ detected anomalies.\r
\r
- .. raw:: latex\r
-\r
- \makeatletter\r
- \csvset{\r
- perfimprovements column width/.style={after head=\csv@pretable\begin{longtable}{ m{1.5cm} m{4cm} m{#1} 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{4cm} m{#1} 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{4cm} m{#1} 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{4cm} m{#1} 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
+#. `Trending Methodology <https://docs.fd.io/csit/master/trending/methodology/index.html>`_\r
+ - throughput test metrics, trend calculations and anomaly\r
+ classification (progression, regression, outlier).\r
\r
+#. `Trendline Graphs <https://docs.fd.io/csit/master/trending/trending/index.html>`_\r
+ - per VPP build MRR throughput measurements against the trendline\r
+ with anomaly highlights, with associated CSIT test jobs.\r
\r
Known Issues\r
------------\r
\r
-Here is the list of known issues in CSIT |release| for VPP performance tests:\r
+List of known issues in CSIT |release| for VPP performance tests:\r
\r
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
| # | Issue | Jira ID | Description |\r
++===+=================================================+============+=================================================================+\r
+| 1 | 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
-| 1 | Vic1385 and Vic1227 low performance. | VPP-664 | Low NDR performance. |\r
-| | | | |\r
+| 2 | Lower than expected NDR throughput of DPDK | CSIT-571 | Suspected NIC firmware or DPDK driver issue affecting NDR and |\r
+| | testpmd and VPP L2 path NDR throughput with | | PDR throughput on XL710 and X710 NICs. |\r
+| | xl710 and x710 NICs, compared to x520 NICs. | | |\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
+| 3 | Tagged Ethernet dot1q and dot1ad L2 path | CSIT-1066 | Tagged Ethernet dot1q and dot1ad L2 path throughput regression: |\r
+| | throughput regression. | | NDR -2%..-5%, PDR -2%..-6%, MRR. Affects l2xc and l2bd |\r
+| | | | performance tests. |\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
+| 4 | IPSec (software, no QAT HW) throughput | CSIT-1064 | IPSec throughput regression: NDR -3%..-8%, PDR -2%..-8%, MRR |\r
+| | regression. | | -3%..-7%. Affects IPSec SW tests, QAT HW tests not affected. |\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
+| 5 | High failure rate of creating working container | CSIT-1065 | About 20% of orchestrated container topology tests failing data |\r
+| | topologies with K8s/Ligato orchestration. | | plane verification indicating configuration issue. Suspected |\r
+| | | | issue with Ligato vpp-agent. |\r
+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r