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 now versioned, with ver. 1 associated
+ with CSIT rls1908 git branch as of 2019-08-21, and ver. 2
+ associated with CSIT rls2001 and master git branches as of
+ 2020-03-27.
- - *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.
+ - To identify performance changes due to VPP code changes from
+ v20.01.0 to v20.05.0, both have been tested in CSIT environment
+ ver. 2 and compared against each other. All substantial
+ progressions has been marked up with RCA analysis. See
+ :ref:`vpp_compare_current_vs_previous_release` and
+ :ref:`vpp_known_issues`.
- - *L2patch tests* - Tests measure performance of L2patch, cross linking
- RX and TX of two physical interfaces.
+#. TEST FRAMEWORK
- - *2-node tests* - Baseline set of 2-node tests covering base ip4, ip4,
- l2patch, l2bd, l2xc.
+ - **CSIT PAPI support**: Due to issues with PAPI performance, VAT is
+ still used in CSIT for all VPP scale tests. See known issues below.
- - *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.
+ - **General Code Housekeeping**: Ongoing RF keywords optimizations,
+ removal of redundant RF keywords and aligning of suite/test
+ setup/teardowns.
- - *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.
+#. PRESENTATION AND ANALYTICS LAYER
- - *Intel Skylake* - Topologies consisting of 2-node and 3-node using
- SuperMirco servers each equipped with two Intel Xeon Skylake Platinum
- processors.
+ - **Graphs layout improvements**: Improved performance graphs layout
+ for better readibility and maintenance: test grouping, axis
+ labels, descriptions, other informative decoration.
-#. **Presentation and Analytics Layer**
+.. raw:: latex
- - *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.
+ \clearpage
-#. **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 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 <https://docs.fd.io/csit/master/trending/introduction/index.html>`_
- - per VPP test case throughput trend, trend compliance and summary of
- detected anomalies.
-
-#. `Trending Methodology <https://docs.fd.io/csit/master/trending/methodology/index.html>`_
- - throughput test metrics, trend calculations and anomaly
- classification (progression, regression, outlier).
-
-#. `Trendline Graphs <https://docs.fd.io/csit/master/trending/trending/index.html>`_
- - 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. |
+| | <https://jira.fd.io/browse/CSIT-570>`_ | 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. |
+| | <https://jira.fd.io/browse/VPP-662>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 3 | `CSIT-1498 | Memif tests are sporadically failing on initialization of memif connection. |
+| | <https://jira.fd.io/browse/CSIT-1498>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 4 | `VPP-1677 | 9000B ip4 nat44: VPP crash + coredump. |
+| | <https://jira.fd.io/browse/VPP-1677>`_ | VPP crashes very often in case that NAT44 is configured and it has to process IP4 jumbo frames (9000B). |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 5 | `CSIT-1591 | All CSIT scale tests can not use PAPI due to much slower performance compared to VAT/CLI (it takes much |
+| | <https://jira.fd.io/browse/CSIT-1499>`_ | longer to program VPP). This needs to be addressed on the PAPI side. |
+| +-----------------------------------------+ |
+| | `VPP-1763 | |
+| | <https://jira.fd.io/browse/VPP-1763>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 6 | `VPP-1675 | IPv4 IPSEC 9000B packet tests are failing as no packet is forwarded. |
+| | <https://jira.fd.io/browse/VPP-1675>`_ | Reason: chained buffers are not supported. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 7 | `CSIT-1593 | IPv4 AVF 9000B packet tests are failing on 3n-skx while passing on 2n-skx. |
+| | <https://jira.fd.io/browse/CSIT-1593>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 8 | `CSIT-1675 | Intel Xeon 2n-skx, 3n-skx and 2n-clx testbeds behaviour and performance became inconsistent following |
+| | <https://jira.fd.io/browse/CSIT-1675>`_ | the upgrade to the latest Ubuntu 18.04 LTS kernel version (4.15.0-72-generic) and associated microcode |
+| | | packages (skx ucode 0x2000064, clx ucode 0x500002c). VPP as well as DPDK L3fwd tests are affected. |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 9 | `CSIT-1679 | All 2n-clx VPP ip4 tests with xxv710 and avf driver are failing. |
+| | <https://jira.fd.io/browse/CSIT-1679>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 10 | `CSIT-1680 | Some 2n-clx cx556a rdma tests are failing. |
+| | <https://jira.fd.io/browse/CSIT-1680>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 11 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Investigate high stdev of tests with VPP inside VM. |
+| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
+| +-----------------------------------------+ |
+| | `CSIT-1704 | |
+| | <https://jira.fd.io/browse/CSIT-1704>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 12 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause of dot1q-l2xcbase progression. |
+| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
+| +-----------------------------------------+ |
+| | `CSIT-1705 | |
+| | <https://jira.fd.io/browse/CSIT-1705>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 13 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause of avf-ip4scale regression. |
+| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
+| +-----------------------------------------+ |
+| | `CSIT-1706 | |
+| | <https://jira.fd.io/browse/CSIT-1706>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 14 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause of progression in vhost-user tests with testpmd in VM. |
+| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
+| +-----------------------------------------+ |
+| | `CSIT-1707 | |
+| | <https://jira.fd.io/browse/CSIT-1707>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+
+| 15 | `CSIT-1699 | Root Cause Analysis for CSIT-2001. Identify cause for avf-ip4base regression. |
+| | <https://jira.fd.io/browse/CSIT-1699>`_ | |
+| +-----------------------------------------+ |
+| | `CSIT-1708 | |
+| | <https://jira.fd.io/browse/CSIT-1708>`_ | |
++----+-----------------------------------------+-----------------------------------------------------------------------------------------------------------+