aboutsummaryrefslogtreecommitdiffstats
path: root/docs/report/vpp_performance_tests/csit_release_notes.rst
blob: c9df5478bc6def17c73ac00c5836293c97dc9478 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
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 improved continuous performance
     trending with anomaly detection and analysis.

#. **Test Framework Optimizations**

   - **General Code Housekeeping**: Ongoing RF keywords optimizations,
     removal of redundant RF keywords.

Performance Changes
-------------------

Relative performance changes in measured NDR, PDR and MRR packet
throughput in |csit-release| are calculated against the test results
from |csit-release-1| report, for tests running on 3-Node Intel Xeon
Haswell testbeds (3n-hsw) in 1-core, 2-core and 4-core (MRR only)
configurations.

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 CSV and pretty
ASCII formats:

  - `CSV 1t1c NDR changes <../_static/vpp/performance-changes-1t1c-ndr.csv>`_,
  - `CSV 2t2c NDR changes <../_static/vpp/performance-changes-2t2c-ndr.csv>`_,
  - `ASCII 1t1c NDR changes <../_static/vpp/performance-changes-1t1c-ndr.txt>`_,
  - `ASCII 2t2c NDR changes <../_static/vpp/performance-changes-2t2c-ndr.txt>`_.

.. note::

    Test results have been generated by
    `FD.io test executor vpp performance job 3n-hsw`_,
    with RF result
    files csit-vpp-perf-|srelease|-\*.zip
    `archived here <../_static/archive/>`_.

PDR Changes
~~~~~~~~~~~

PDR throughput changes between releases are available in CSV and pretty
ASCII formats:

  - `CSV 1t1c PDR changes <../_static/vpp/performance-changes-1t1c-pdr.csv>`_,
  - `CSV 2t2c PDR changes <../_static/vpp/performance-changes-2t2c-pdr.csv>`_,
  - `ASCII 1t1c PDR changes <../_static/vpp/performance-changes-1t1c-pdr.txt>`_,
  - `ASCII 2t2c PDR changes <../_static/vpp/performance-changes-2t2c-pdr.txt>`_.

.. note::

    Test results have been generated by
    `FD.io test executor vpp performance job 3n-hsw`_,
    with RF result
    files csit-vpp-perf-|srelease|-\*.zip
    `archived here <../_static/archive/>`_.

MRR Changes
~~~~~~~~~~~

MRR throughput changes between releases are available in CSV and pretty
ASCII formats:

  - `CSV 1t1c MRR changes <../_static/vpp/performance-changes-1t1c-mrr.csv>`_,
  - `CSV 2t2c MRR changes <../_static/vpp/performance-changes-2t2c-mrr.csv>`_,
  - `CSV 4t4c MRR changes <../_static/vpp/performance-changes-4t4c-mrr.csv>`_,
  - `ASCII 1t1c MRR changes <../_static/vpp/performance-changes-1t1c-mrr.txt>`_,
  - `ASCII 2t2c MRR changes <../_static/vpp/performance-changes-2t2c-mrr.txt>`_,
  - `ASCII 4t4c MRR changes <../_static/vpp/performance-changes-4t4c-mrr.txt>`_.

.. note::

    Test results have been generated by
    `FD.io test executor vpp performance job 3n-hsw`_,
    with RF result
    files csit-vpp-perf-|srelease|-\*.zip
    `archived here <../_static/archive/>`_.

Skx vs. Hsw Comparison
----------------------

Relative performance comparison in measured NDR, PDR and MRR packet
throughput is calculated for tests executed on 3-Node Skylake (3n-skx)
and 3-Node Haswell (3n-hsw) physical testbed types in 1-core
configurations.

NDR Comparison
~~~~~~~~~~~~~~

NDR comparison between testbed types is available in CSV and pretty
ASCII formats:

  - `CSV 1c NDR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-ndr.csv>`_,
  - `ASCII 1c NDR comparison <../_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 RF result
    files csit-vpp-perf-|srelease|-\*.zip
    `archived here <../_static/archive/>`_.

PDR Comparison
~~~~~~~~~~~~~~

PDR comparison between testbed types is available in CSV and pretty
ASCII formats:

  - `CSV 1c PDR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-pdr.csv>`_,
  - `ASCII 1c PDR comparison <../_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 RF result
    files csit-vpp-perf-|srelease|-\*.zip
    `archived here <../_static/archive/>`_.

MRR Comparison
~~~~~~~~~~~~~~

MRR comparison between testbed types is available in CSV and pretty
ASCII formats:

  - `CSV 1c MRR comparison <../_static/vpp/performance-compare-testbeds-3n-hsw-3n-skx-mrr.csv>`_,
  - `ASCII 1c MRR comparison <../_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 RF 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.

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.                                |
+---+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+