aboutsummaryrefslogtreecommitdiffstats
path: root/docs/report/vpp_performance_tests/csit_release_notes.rst
blob: da25ef6bd5ec332065629c2aaeafc4b5c6663e54 (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
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 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.

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