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=a2fb1c70b0f689de682ae48df8463f7e1e4d86cc;hp=0a5d25e6b6a254252f0d981d7188063b2fb05f05;hb=459d0af9c92134c5320e0f410b961c27f431f71f;hpb=fa19644365e53cdf2a02c3c93b1b93a5d3891210 diff --git a/docs/report/vpp_performance_tests/csit_release_notes.rst b/docs/report/vpp_performance_tests/csit_release_notes.rst index 0a5d25e6b6..a2fb1c70b0 100644 --- a/docs/report/vpp_performance_tests/csit_release_notes.rst +++ b/docs/report/vpp_performance_tests/csit_release_notes.rst @@ -1,125 +1,228 @@ -CSIT Release Notes -================== - -Changes in CSIT |release| -------------------------- - -#. VPP performance test environment changes - - - Further optimizations of VM and vhost-user test environment - various - Qemu virtio queue size testing with value of 256 and 1024. Applied - Linux CFS optimization to run VPP worker threads and Qemu worker threads - with highest priority. - -#. VPP performance test framework changes - - - Full code review, optimization and refactor. - -#. T-rex changes - - - Full refactor of T-rex driver and introduce of traffic profiles that - improves readability, manageability of traffic profiles for various - test scenarios. - -#. Added VPP performance tests - - - **LXC memif** - - - Memif interface tests interconnecting two VPP instances on single SUT. - Master VPP instance running on native OS with Intel x520 NIC and guest - VPP instance running in Linux Container (LXC) doing the L2 cross - connect loop. LXC running in privileged mode is pinned to dedicated - cores. All VPP instances are same version. - - - **Stateful Security Groups** - - - **VM vhost use cases** - -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 are -calculated against the test results listed in CSIT |release-1| report. -VPP-16.09 numbers are provided for reference. - -NDR Throughput -~~~~~~~~~~~~~~ - -Non-Drop Rate Throughput discovery tests: - -.. csv-table:: - :align: center - :header-rows: 1 - :file: ../../../docs/report/vpp_performance_tests/performance_improvements/ndr_throughput.csv - -PDR Throughput -~~~~~~~~~~~~~~ - -Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%: - -.. csv-table:: - :align: center - :header-rows: 1 - :file: ../../../docs/report/vpp_performance_tests/performance_improvements/pdr_throughput.csv - -Measured improvements are in line with VPP code optimizations listed in -`VPP-17.07 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: - -.. csv-table:: - :align: center - :header-rows: 1 - :file: ../../../docs/report/vpp_performance_tests/performance_improvements/ndr_throughput_others.csv - -PDR Throughput -~~~~~~~~~~~~~~ - -Partial Drop Rate thoughput discovery tests with packet Loss Tolerance of 0.5%: - -.. csv-table:: - :align: center - :header-rows: 1 - :file: ../../../docs/report/vpp_performance_tests/performance_improvements/pdr_throughput_others.csv - - -Known Issues ------------- - -Here is the list of known issues in CSIT |release| for VPP performance tests: - -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| # | Issue | Jira ID | Description | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 1 | NDR discovery test failures 1518B frame size | VPP-663 | VPP reporting errors: dpdk-input Rx ip checksum errors. | -| | for ip4scale200k, ip4scale2m scale IPv4 routed- | | Observed frequency: all test runs. | -| | forwarding tests. ip4scale20k tests are fine. | | | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 2 | Vic1385 and Vic1227 low performance. | VPP-664 | Low NDR performance. | -| | | | | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 3 | Sporadic NDR discovery test failures on x520. | CSIT-750 | Suspected issue with HW settings (BIOS, FW) in LF | -| | | | infrastructure. Issue can't be replicated outside LF. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 4 | 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. | | | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ -| 5 | Lower than expected NDR and PDR 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. | -+---+-------------------------------------------------+------------+-----------------------------------------------------------------+ - +Release Notes +============= + +Changes in |csit-release| +------------------------- + +#. **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. + + - *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. + + - *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. + + - *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. + + - *Intel Skylake* - Topologies consisting of 2-node and 3-node using + SuperMirco servers each equipped with two Intel Xeon Skylake Platinum + processors. + +#. **Presentation and Analytics Layer** + + - *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. + +#. **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 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. + +NDR Changes +~~~~~~~~~~~ + +NDR throughput changes between releases are available in a +CSV and pretty ASCII formats: + + - `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>`_. + +.. 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/>`_. + +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 mrr jobs `_ + with Robot Framework result files csit-vpp-perf-mrr-daily-master__*__output.xml.gz + `archived here `_. + +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. + +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 | 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. | | | ++---+-------------------------------------------------+------------+-----------------------------------------------------------------+ +| 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. | ++---+-------------------------------------------------+------------+-----------------------------------------------------------------+ +| 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. | ++---+-------------------------------------------------+------------+-----------------------------------------------------------------+