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=eff392d9fab76c59d392cdb940cbe8c9afd52a27;hp=da25ef6bd5ec332065629c2aaeafc4b5c6663e54;hb=2a5ecb6c130109828210eb7135a8fa4d6a0f2c80;hpb=c5bb42a7c4fb7c7fd8a62947250d91f8e81668f7 diff --git a/docs/report/vpp_performance_tests/csit_release_notes.rst b/docs/report/vpp_performance_tests/csit_release_notes.rst index da25ef6bd5..eff392d9fa 100644 --- a/docs/report/vpp_performance_tests/csit_release_notes.rst +++ b/docs/report/vpp_performance_tests/csit_release_notes.rst @@ -4,221 +4,100 @@ Release Notes Changes in |csit-release| ------------------------- -#. **VPP performance tests** +#. VPP PERFORMANCE TESTS - - *MRR tests* - 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. + - CSIT test environment is versioned, see + :ref:`test_environment_versioning`. - - *MLR tests* - NDR and PDR tests measure the packet forwarding rate using - MLRsearch library by traffic generator. All tests that previously used - binary search were converted to MLRsearch. + - **GENEVE tests**: Added VPP performance tests for GENEVE tunnels. + See :ref:`geneve_methodology` for more details. - - *L2patch tests* - Tests measure performance of L2patch, cross linking - RX and TX of two physical interfaces. - - *2-node tests* - Baseline set of 2-node tests covering base ip4, ip4, - l2patch, l2bd, l2xc. + - **GSO tests**: Added VPP performance tests for GSOtap and GSOvirtio. + All tested topologies are compared with GSO enabled and disabled. + In |csit-release| there is only 1t1c tests running. + See :ref:`gso_methodology` for more details. - - *Generated tests* - Simplified and unified test structure, - semi-autogenerated by generator script. Test generator is currently able - to create test combinations with various frame size and cores combinations. - All existing test cases were converted to new format. - - *Simultaneous multithreading* - SMT-aware automatic detection and - resource configuration including thread affinity, number of rx queues and - DPDK I/O mbufs. Tests are automatically tagged during execution indicating - configuration. + - **NAT44 tests**: Added new test type, pure throughput tests. + They are similar to PPS tests, but they employ ramp-up trials + to ensure all sessions are created (and not timing out) + for performance trials. - - *Intel Skylake* - Topologies consisting of 2-node and 3-node using - SuperMirco servers each equipped with two Intel Xeon Skylake Platinum - processors. + - **Jumbo for ipsec**: Test cases with 9000 byte frames are re-enabled + in ipsec suites. -#. **Presentation and Analytics Layer** + - **Randomized profiles**: Improved repeatability and cycle length. + For details, see :ref:`packet_flow_ordering`. - - *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. + - **Arm 2n-tx2 testbed**: New physical testbed type installed in + FD.io CSIT, with VPP and DPDK performance data added to CSIT + trending and this report. -#. **Test Framework Optimizations** + - **Framework speedup**: Shortened overall test job duration + by using a different test selection mechanism (using --test + instead of --include) and by avoiding unnecessary PAPI reconnects. - - *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. +#. TEST FRAMEWORK - - *General code housekeeping* - ongoing RF keywords optimizations, - removal of redundant RF keywords. + - **TRex ASTF**: Improved capability to run TRex in advanced stateful mode. -Performance Changes -------------------- + - **CSIT PAPI support**: Due to issues with PAPI performance, VAT is + still used in CSIT for all VPP scale tests. See known issues below. -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 repeatability, 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 repeatability vary between the test cases. + - **General Code Housekeeping**: Ongoing code optimizations, + speed ups and bug fixes. -NDR Changes -~~~~~~~~~~~ +#. PRESENTATION AND ANALYTICS LAYER -NDR throughput changes between releases are available in a -CSV and pretty ASCII formats: + - **Graphs improvements**: Updated Packet Latency graphs, + see :ref:`latency_methodology`. - - `csv format for 1t1c <../_static/vpp/performance-changes-1t1c-ndr.csv>`_, - - `csv format for 2t2c <../_static/vpp/performance-changes-2t2c-ndr.csv>`_, - - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-1t1c-ndr.txt>`_, - - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-2t2c-ndr.txt>`_. +.. raw:: latex -.. note:: + \clearpage - Test results have been generated by - `FD.io test executor vpp performance job 3n-hsw`_, - with Robot Framework result - files csit-vpp-perf-|srelease|-\*.zip - `archived here <../_static/archive/>`_. - -PDR Changes -~~~~~~~~~~~ - -PDR throughput changes between releases are available in a -CSV and pretty ASCII formats: - - - `csv format for 1t1c <../_static/vpp/performance-changes-1t1c-pdr.csv>`_, - - `csv format for 2t2c <../_static/vpp/performance-changes-2t2c-pdr.csv>`_, - - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-1t1c-pdr.txt>`_, - - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-2t2c-pdr.txt>`_. - -.. note:: - - Test results have been generated by - `FD.io test executor vpp performance job 3n-hsw`_, - with Robot Framework result - files csit-vpp-perf-|srelease|-\*.zip - `archived here <../_static/archive/>`_. - -MRR Changes -~~~~~~~~~~~ - -MRR small packet throughput changes between releases are available in a -CSV and pretty ASCII formats: - - - `csv format for 1t1c <../_static/vpp/performance-changes-1t1c-mrr.csv>`_, - - `csv format for 2t2c <../_static/vpp/performance-changes-2t2c-mrr.csv>`_, - - `csv format for 4t4c <../_static/vpp/performance-changes-4t4c-mrr.csv>`_, - - `pretty ASCII format for 1t1c <../_static/vpp/performance-changes-1t1c-mrr.txt>`_, - - `pretty ASCII format for 2t2c <../_static/vpp/performance-changes-2t2c-mrr.txt>`_, - - `pretty ASCII format for 4t4c <../_static/vpp/performance-changes-4t4c-mrr.txt>`_. - -.. note:: - - Test results have been generated by - `FD.io test executor vpp performance job 3n-hsw`_, - with Robot Framework result - files csit-vpp-perf-|srelease|-\*.zip - `archived here <../_static/archive/>`_. - -Comparison Across Testbeds --------------------------- - -Relative performance changes in measured packet throughputon 3-Node Skx testbed -are calculated against the results measured on 3-Node Hsw testbed. - -NDR Changes -~~~~~~~~~~~ - -NDR changes between testbeds are available in a -CSV and pretty ASCII formats: - - - `csv format for ndr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-ndr.csv>`_, - - `pretty ASCII format for ndr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-ndr.txt>`_. - -.. note:: - - Test results have been generated by - `FD.io test executor vpp performance job 3n-hsw`_ and - `FD.io test executor vpp performance job 3n-skx`_ - with Robot Framework result - files csit-vpp-perf-|srelease|-\*.zip - `archived here <../_static/archive/>`_. - -PDR Changes -~~~~~~~~~~~ - -PDR throughput changes between testbeds are available in a -CSV and pretty ASCII formats: - - - `csv format for pdr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.csv>`_, - - `pretty ASCII format for pdr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.txt>`_. - -.. note:: - - Test results have been generated by - `FD.io test executor vpp performance job 3n-hsw`_ and - `FD.io test executor vpp performance job 3n-skx`_ - with Robot Framework result - files csit-vpp-perf-|srelease|-\*.zip - `archived here <../_static/archive/>`_. - -MRR Changes -~~~~~~~~~~~ - -MRR throughput changes between testbeds are available in a -CSV and pretty ASCII formats: - - - `csv format for mrr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.csv>`_, - - `pretty ASCII format for mrr <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.txt>`_. - -.. note:: - - Test results have been generated by - `FD.io test executor vpp performance job 3n-hsw`_ and - `FD.io test executor vpp performance job 3n-skx`_ - with Robot Framework result - files csit-vpp-perf-|srelease|-\*.zip - `archived here <../_static/archive/>`_. - -Throughput Trending -------------------- - -In addition to reporting throughput changes between VPP releases, CSIT -provides continuous performance trending for VPP master branch: - -#. `VPP Performance Dashboard `_ - - per VPP test case throughput trend, trend compliance and summary of - detected anomalies. - -#. `Trending Methodology `_ - - throughput test metrics, trend calculations and anomaly - classification (progression, regression, outlier). - -#. `Trendline Graphs `_ - - per VPP build MRR throughput measurements against the trendline - with anomaly highlights, with associated CSIT test jobs. +.. _vpp_known_issues: Known Issues ------------ 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. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 2 | High failure rate of api call | VPP-1361 | Failure rate: 30-40% of tests failing due to interfaces not | -| | sw_interface_set_flags [admin-up|link-up] | | in link-up state after API call sw_interface_set_flags. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 3 | Scale IPSecHW Interface mode throughput | CSIT-1234 | IPSec throughput regression: NDR -28%..-31%, PDR -28%..-31%, | -| | regression. | | MRR -40%. Affects IPSec HW Scale 1000tnl tests with Int mode. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| # | JiraID | Issue Description | ++====+=========================================+===========================================================================================================+ +| 1 | `CSIT-570 | Sporadic (1 in 200) NDR discovery test failures on x520. DPDK reporting rx-errors, indicating L1 issue. | +| | `_ | 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. | +| | `_ | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 3 | `CSIT-1763 | Adapt ramp-up phase of nat44 tests for different frame sizes. | +| | `_ | Currently ramp-up phase rate and duration values are correctly set for tests with 64B frame size. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 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. | +| +-----------------------------------------+ The usual PAPI library spends too much time parsing arguments, so even with async processing (hundreds of | +| | `VPP-1763 | commands in flight over socket), the VPP configuration for large scale tests (millions of messages) takes | +| | `_ | too long. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| 5 | `VPP-1934 | [i40e] Interfaces are not brought up from carrier-down. | +| | `_ | In case of i40e -based interface (e.g Intel x700 series NIC) is bound to kernel driver (i40e) and is in | +| | | state "no-carrier" () because previously it was disabled via | +| | | "I40E_AQ_PHY_LINK_ENABLED" call, then VPP during initialization of AVF interface is not re-enabling | +| | | interface link via i40e driver to up. | +| | | CSIT implemented `workaround for AVF interface `_ until fixed. | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ + +Root Cause Analysis for Performance Changes +------------------------------------------- + +List of RCAs in |csit-release| for VPP performance changes: + ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+ +| # | JiraID | Issue Description | ++====+=========================================+===========================================================================================================+ +| 1 | `VPP-1972 | One VPP change has decreased performance of NAT44ed processing, both slow path and fast path. | +| | ` | | ++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+