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=d7c2bbc7d482d97240b7565f2a8a12d19dc3010b;hp=27b87c50e84164da3544b62a820d3a6461bbeab2;hb=898aeaa4efbbfcffea77471220ffa903600d3b06;hpb=93907196951677ebaa47b9a384eee118cc2fad45 diff --git a/docs/report/vpp_performance_tests/csit_release_notes.rst b/docs/report/vpp_performance_tests/csit_release_notes.rst index 27b87c50e8..d7c2bbc7d4 100644 --- a/docs/report/vpp_performance_tests/csit_release_notes.rst +++ b/docs/report/vpp_performance_tests/csit_release_notes.rst @@ -4,207 +4,93 @@ 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 Improvements ------------------------- - -Substantial improvements in measured packet throughput have been observed in a -number of CSIT |release| tests listed below, with relative increase of -double-digit percentage points. Relative improvements 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|. Performance numbers since release -VPP-16.09 are provided for reference. - -NDR Throughput -~~~~~~~~~~~~~~ - -Non-Drop Rate Throughput discovery tests: - -.. only:: html - - .. csv-table:: - :align: center - :file: performance_improvements/performance_improvements_ndr_top.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - 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}}\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}} - ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_ndr_top.csv} - } - - -PDR Throughput -~~~~~~~~~~~~~~ - -Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%: - -.. only:: html - - .. csv-table:: - :align: center - :file: performance_improvements/performance_improvements_pdr_top.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - 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}}\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}} - ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_pdr_top.csv} - } - - -Measured improvements are in line with VPP code optimizations listed in -`VPP-17.10 release notes -`_. - -Other Performance Changes -------------------------- - -Other changes in measured packet throughput, with either minor relative increase -or decrease, have been observed in a number of CSIT |release| tests listed -below. Relative changes are calculated against the test results listed in CSIT -|release-1| report. - -NDR Throughput -~~~~~~~~~~~~~~ - -Non-Drop Rate Throughput discovery tests: - -.. only:: html - - .. csv-table:: - :align: center - :file: performance_improvements/performance_improvements_ndr_low.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - 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}}\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}} - ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_ndr_low.csv} - } - - -PDR Throughput -~~~~~~~~~~~~~~ - -Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%: - -.. only:: html - - .. csv-table:: - :align: center - :file: performance_improvements/performance_improvements_pdr_low.csv - -.. only:: latex - - .. raw:: latex - - \makeatletter - \csvset{ - 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}}\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}} - ]{../_tmp/src/vpp_performance_tests/performance_improvements/performance_improvements_pdr_low.csv} - } - +#. **Added VPP performance tests** + + - **MRR tests** : New MRR tests measure the packet forwarding rate + under the maximum load offered by traffic generator over a set + trial duration, regardless of packet loss. Maximum load for + specified Ethernet frame size is set to the bi-directional link + rate. MRR tests are used for continuous performance trending and + for comparison between releases. + + - **Service Chaining with SRv6** : SRv6 (Segment Routing IPv6) proxy tests + verifying performance of Endpoint to SR-unaware appliance via + masquerading (End.AM), dynamic proxy (End.AD) or static proxy (End.AS) + functions. + +#. **Presentation and Analytics Layer (PAL)** + + - Added continuous performance measuring, trending and anomaly + detection. Includes new PAL code and Jenkins jobs for Performance + Trending (PT) and Performance Analysis (PA) producing performance + trending dashboard and trendline graphs with summary and drill- + down views across all specified tests that can be reviewed and + inspected regularly by FD.io developers and users community. + +#. **Test Framework Optimizations** + + - **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. + + - **General code housekeeping** : ongoing RF keywords + optimizations, removal of redundant RF keywords. + +Performance 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. + +NDR Throughput Changes +~~~~~~~~~~~~~~~~~~~~~~ + +NDR small packet throughput changes between releases 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>`_, + - `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>`_. + +PDR Throughput Changes +~~~~~~~~~~~~~~~~~~~~~~ + +NDR small packet throughput changes between releases 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>`_, + - `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>`_. + +MRR Throughput Changes +~~~~~~~~~~~~~~~~~~~~~~ + +MRR changes between releases 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>`_. Known Issues ------------ + + Here is the list of known issues in CSIT |release| for VPP performance tests: +---+-------------------------------------------------+------------+-----------------------------------------------------------------+ @@ -213,14 +99,22 @@ Here is the list of known issues in CSIT |release| for VPP performance tests: | 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. | +| 2 | 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. | +---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 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 | +| 3 | Lower than expected NDR throughput with | CSIT-571 | 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. | +---+-------------------------------------------------+------------+-----------------------------------------------------------------+ - +| 4 | rls1801 plugin related performance regression | CSIT-925 | With all plugins loaded NDR, PDR and MaxRates vary | +| | | | intermittently from 3% to 5% across multiple test executions. | +| | | | Requires plugin code bisecting. | ++---+-------------------------------------------------+------------+-----------------------------------------------------------------+ +| 5 | rls1801 generic small performance regression | CSIT-926 | Generic performance regression of discovered NDR, PDR and | +| | ip4base, l2xcbase, l2bdbase | | MaxRates of -3%..-1% vs. rls1710, affects ip4base, l2xcbase, | +| | | | l2bdbase test suites. Not detected by CSIT performance trending | +| | | | scheme as it was masked out by another issue CSIT-925. | ++---+-------------------------------------------------+------------+-----------------------------------------------------------------+ +| 6 | rls1801 substantial NDR/PDR regression for | CSIT-928 | NDR regression of -7%..-15%, PDR regression of -3%..-15% | +| | IPSec tunnel scale with HW QAT crypto-dev | | compared to rls1710. | ++---+-------------------------------------------------+------------+-----------------------------------------------------------------+