-CSIT Release Notes\r
-==================\r
-\r
-Changes in CSIT |release|\r
--------------------------\r
-\r
-#. Test environment changes in VPP data plane performance tests:\r
-\r
- - Further characterization and optimizations of VPP vhost-user and VM test\r
- methodology and test environment;\r
-\r
- - Tests with varying Qemu virtio queue (a.k.a. vring) sizes:\r
- [vr256] default 256 descriptors, [vr1024] 1024 descriptors to\r
- optimize for packet throughput;\r
-\r
- - Tests with varying Linux :abbr:`CFS (Completely Fair Scheduler)`\r
- settings: [cfs] default settings, [cfsrr1] :abbr:`CFS (Completely Fair\r
- Scheduler)` RoundRobin(1) policy applied to all data plane threads\r
- handling test packet path including all VPP worker threads and all Qemu\r
- testpmd poll-mode threads;\r
-\r
- - Resulting test cases are all combinations with [vr256,vr1024] and\r
- [cfs,cfsrr1] settings;\r
-\r
- - For more detail see performance results observations section in\r
- this report;\r
-\r
-#. Code updates and optimizations in CSIT performance framework:\r
-\r
- - Complete CSIT framework code revision and optimizations as descried\r
- on CSIT wiki page `Design_Optimizations\r
- <https://wiki.fd.io/view/CSIT/Design_Optimizations>`_.\r
-\r
- - For more detail see the :ref:`CSIT Framework Design <csit-design>` section\r
- in this report;\r
-\r
-#. Changes to CSIT driver for TRex Traffic Generator:\r
-\r
- - Complete refactor of TRex CSIT driver;\r
-\r
- - Introduction of packet traffic profiles to improve usability and\r
- manageability of traffic profiles for a growing number of test\r
- scenarios.\r
-\r
- - Support for packet traffic profiles to test IPv4/IPv6 stateful and\r
- stateless DUT data plane features;\r
-\r
-#. Added VPP performance tests\r
-\r
- - **Linux Container VPP memif virtual interface tests**\r
-\r
- - VPP Memif virtual interface (shared memory interface) tests\r
- interconnecting VPP instances over memif. VPP vswitch\r
- instance runs in bare-metal user-mode handling Intel x520 NIC\r
- 10GbE interfaces and connecting over memif (Master side) virtual\r
- interfaces to another instance of VPP running in bare-metal Linux\r
- Container (LXC) with memif virtual interfaces (Slave side). LXC\r
- runs in a priviliged mode with VPP data plane worker threads\r
- pinned to dedicated physical CPU cores per usual CSIT practice.\r
- Both VPP run the same version of software. This test topology is\r
- equivalent to existing tests with vhost-user and VMs.\r
-\r
- - **Stateful Security Groups**\r
-\r
- - New tests of VPP stateful security-groups a.k.a. acl-plugin\r
- functionally compatible with networking-vpp OpenStack;\r
-\r
- - New tested security-groups access-control-lists (acl)\r
- configuration variants include: [iaclNsl] input acl stateless,\r
- [oaclNsl] output acl stateless, [iaclNsf] input acl stateful\r
- a.k.a. reflect, [oaclNsf] output acl stateful a.k.a. reflect,\r
- where N is number of access-control-entries (ace) in the acl.\r
-\r
- - Testing packet flows transmitted by TG: 100, 10k, 100k, always\r
- hitting the last permit entry in acl.\r
-\r
- - **VPP vhost and VM tests**\r
-\r
- - New VPP vhost-user and VM test cases to benchmark performance of\r
- VPP and VM topologies with Qemu and CFS policy combinations of\r
- [vr256,vr1024] x [cfs,cfsrr1];\r
-\r
- - Statistical analysis of repeatibility of results;\r
-\r
-Performance Improvements\r
-------------------------\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|. VPP-16.09 and VPP-17.01 numbers are\r
-provided for reference.\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_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{5cm} 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{5cm} 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.07 release notes\r
-<https://docs.fd.io/vpp/17.07/release_notes_1707.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{5cm} 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{5cm} 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
-\r
-\r
-Known Issues\r
-------------\r
-\r
-Here is the list of known issues in CSIT |release| for VPP performance tests:\r
-\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| # | Issue | Jira ID | Description |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 1 | Security-groups acl-plugin scale tests failure | CSIT-731 | VPP with 2 worker threads crashes during security-groups |\r
-| | with stateful acls if VPP with 2 worker threads | VPP-912 | iaclNsf and oaclNsf tests with 100k flows. |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 2 | VPP fails memif tests in 4 worker 2 core setup | CSIT-732 | VPP with 4 worker threads running on 2 physical cores crashes |\r
-| | | VPP-920 | during memif tests. Initial debugging points to DPDK code |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 3 | NDR discovery test failures 1518B frame size | VPP-663 | VPP reporting errors: dpdk-input Rx ip checksum errors. |\r
-| | for ip4scale200k, ip4scale2m scale IPv4 routed- | | Observed frequency: all test runs. |\r
-| | forwarding tests. ip4scale20k tests are fine. | | |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 4 | Vic1385 and Vic1227 low performance. | VPP-664 | Low NDR performance. |\r
-| | | | |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 5 | Sporadic NDR discovery test failures on x520. | CSIT-750 | Suspected issue with HW settings (BIOS, FW) in LF |\r
-| | | | infrastructure. Issue can't be replicated outside LF. |\r
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 6 | 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
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-| 7 | Lower than expected NDR and PDR 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
-+---+-------------------------------------------------+------------+-----------------------------------------------------------------+\r
-\r
+Release Notes
+=============
+
+Changes in |csit-release|
+-------------------------
+
+#. VPP PERFORMANCE TESTS
+
+ - **MRR Throughput**: MRR (Maximum Receive Rate) test code has now
+ configurable trial duration and number of consecutive executions.
+ Coverage of MRR tests has been extended across more test
+ scenarios. MRR tests are used for continuous performance trending
+ and for comparison between VPP releases.
+
+ - **MLRsearch Throughput**: MLRsearch algorithm has been introduced
+ for all NDR and PDR throughput tests. All tests that previously
+ used binary search got converted to MLRsearch. Coverage of NDR/PDR
+ tests has been extended across more test scenarios.
+
+ - **L2patch Tests**: Tests measure performance of VPP L2patch, the
+ fastest L2 forwarding path implemented in VPP, that cross-links
+ RX and TX of two physical interfaces.
+
+ - **2-Node Tests**: A new baseline set of 2-node tests covering base
+ ip4, ip6, l2patch, l2bd, l2xc, running on new Xeon Skylake
+ testbeds.
+
+ - **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 Multi-Threading**: SMT-aware detection of server
+ processor operation mode (HyperThreading enabled/disabled) with
+ associated compute resource configuration including thread
+ affinity, number of Rx queues and DPDK I/O mbufs. Tests are
+ automatically tagged during execution to indicate executed thread
+ configuration.
+
+ - **Intel Xeon Skylake Support**: Support for 2-Node and 3-Node
+ physical testbed topologies based on the new SuperMirco servers
+ each with two Intel Xeon Skylake Platinum processors. Full
+ Ansible playbooks refactor for quick server (re)installation and
+ reference pointers of configuration.
+
+#. PRESENTATION AND ANALYTICS LAYER
+
+ - **Performance trending**: Further improvements of continuous
+ performance trending, anomaly detection and analysis.
+
+#. TEST FRAMEWORK OPTIMIZATIONS
+
+ - **General Code Housekeeping**: Ongoing RF keywords optimizations,
+ removal of redundant RF keywords.
+
+.. _vpp_known_issues:
+
+Known Issues
+------------
+
+List of known issues in |csit-release| for VPP performance tests:
+
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| # | 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-1361 | High failure rate of api call sw_interface_set_flags [admin-up|link-up]. |
+| | <https://jira.fd.io/browse/VPP-1361>`_ | Failure rate: 30-40% of tests failing due to interfaces not in link-up state after API call sw_interface_set_flags. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 3 | `CSIT-1234 | VPP IPSecHW scale interface mode 1core, low NDR and PDR 64B throughput in 3n-hsw testbeds, in CSIT-18.07 vs. CSIT-18.04. |
+| | <https://jira.fd.io/browse/CSIT-1234>`_ | ip4ipsecscale1000tnl-ip4base-int 1core CSIT-18.07/18.04 relative change: NDR -31%, PDR -32%, MRR -38%. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 4 | `CSIT-1242 | VPP xl710 ip4base test 1core, low NDR and PDR 64B throughput in 3n-hsw testbeds, in CSIT-18.07 vs. CSIT-18.04. |
+| | <https://jira.fd.io/browse/CSIT-1242>`_ | xl710 ip4base 1core CSIT-18.07/18.04 relative change: NDR -29%, high stdev. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 5 | `CSIT-1243 | VPP nat44 base test 2core, low NDR and PDR 64B throughput in 3n-skx testbeds, compared to 3n-hsw testbeds. |
+| | <https://jira.fd.io/browse/CSIT-1243>`_ | ip4base-nat44 2core 3n-skx/3n-hsw relative change: NDR -19%, PDR -22%. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 6 | `CSIT-1244 | VPP lispip4 base test 2core, low NDR and PDR 64B throughput in 3n-skx testbeds, compared to 3n-hsw testbeds. |
+| | <https://jira.fd.io/browse/CSIT-1244>`_ | ip4lispip4-ip4base 2core 3n-skx/3n-hsw relative change: NDR -11%, PDR -18%. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 7 | `CSIT-1245 | VPP srv6proxy-stat and srv6proxy-masq, much higher NDR and PDR 78B throughput in 3n-hsw testbeds, in CSIT-18.07 vs. CSIT-18.04. |
+| | <https://jira.fd.io/browse/CSIT-1245>`_ | Due to wrong test suite configuration in dynamic-proxy mode. Artefact of suite code refactoring. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 8 | `CSIT-1246 | Ligato K8S orchestrated tests are failing due to incompatibility of the latest released Ligato vpp-agent with VPP-18.07. |
+| | <https://jira.fd.io/browse/CSIT-1246>`_ | Past vpp-agent releases are not compatible either. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 9 | `CSIT-1253 | VPP lbdpdk link bonding tests failing due to interfaces not coming up. |
+| | <https://jira.fd.io/browse/CSIT-1253>`_ | VPP lbdpdk link bonding tests relying on DPDK functionality for bonding fail. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 10 | `CSIT-1266 | Because of wrong Multi Seq configuration in the suite "csit/tests/vpp/perf/ip4/2n1l-25ge2p1xxv710-ethip4-ip4base-mrr.robot", |
+| | <https://jira.fd.io/browse/CSIT-1266>`_ | the data generated by this suite is incorrect. The bug was fixed by the `patch 14440 <https://gerrit.fd.io/r/#/c/14440>`_. |
+| | | The incorrect data will be replaced by new generated correct data. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
+| 11 | `CSIT-1267 | Because of the wrong NIC configuration in suites |
+| | <https://jira.fd.io/browse/CSIT-1267>`_ | tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-mrr.robot, |
+| | | tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr.robot, |
+| | | tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-mrr.robot, |
+| | | tests/vpp/perf/vm_vhost/10ge2p1x710-1lbvpplacp-dot1q-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr.robot |
+| | | the data generated by this suites is incorrect. |
+| | | The bug was fixed by the `patch 14395 <https://gerrit.fd.io/r/#/c/14395>`_. |
+| | | The incorrect data will be replaced by new generated correct data. |
++----+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+