csit rls1701 report nits and updates:
[csit.git] / docs / report / vpp_performance_tests / packet_throughput_graphs / l2.rst
1 L2 Ethernet Switching
2 =====================
3
4 Following sections provide a summary of VPP Phy-to-Phy L2 Ethernet switching
5 performance illustrating NDR throughput (zero packet loss) and PDR throughput
6 (<0.5% packet loss). Performance is reported for VPP running in multiple
7 configurations of VPP worker thread(s), a.k.a. VPP data plane thread (s), and
8 their physical CPU core(s) placement.
9
10 *Title of each graph* is a regex (regular expression) matching all plotted
11 throughput test cases, *X-axis labels* are indeces of csit-vpp-perf-1701 jobs
12 that created result output files used as data sources for the graph,
13 *Y-axis labels* are measured Packets Per Second [pps] values, and the *graph
14 legend* identifes the plotted test suites.
15
16 .. note::
17
18     Data sources for reported test results: i) FD.io test executor jobs
19     `csit-vpp-perf-1701-all
20     <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1701-all/>`_ and
21     `csit-vpp-perf-1701-long
22     <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1701-long/>`_
23     , ii) archived FD.io jobs test result `output files
24     <../../_static/archive/>`_.
25
26 NDR Throughput
27 ~~~~~~~~~~~~~~
28
29 VPP NDR Throughput - running in configuration of **one worker thread (1t) on
30 one physical core (1c)** - is presented in the figure below.
31
32 .. raw:: html
33
34     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-l2-ndrdisc.html"></iframe>
35
36 *Figure 1. VPP 1thread 1core - NDR Throughput for Phy-to-Phy L2 Ethernet
37 Switching.*
38
39 CSIT test cases used to generate results presented above can be found in CSIT
40 git repository by filtering with specified regex as follows:
41
42 .. code-block:: bash
43
44     $ csit/tests/perf
45     $ grep -E "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
46
47     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
48     10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-dot1ad-l2xcbase-ndrdisc
49     10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-dot1q-l2xcbase-ndrdisc
50     10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
51     10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
52     10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
53     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
54     40ge2p1xl710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-ndrdisc
55     40ge2p1xl710-eth-l2xcbase-ndrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-ndrdisc
56
57 VPP NDR Throughput - running in configuration of **two worker threads (2t) on two
58 physical cores (2c)** - is presented in the figure below.
59
60 .. raw:: html
61
62     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-l2-ndrdisc.html"></iframe>
63
64 *Figure 2. VPP 2threads 2cores - NDR Throughput for Phy-to-Phy L2 Ethernet
65 Switching.*
66
67 CSIT test cases used to generate results presented above can be found in CSIT
68 git repository by filtering with specified regex as follows:
69
70 .. code-block:: bash
71
72     $ csit/tests/perf
73     $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
74
75     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
76     10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-dot1ad-l2xcbase-ndrdisc
77     10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-dot1q-l2xcbase-ndrdisc
78     10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
79     10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
80     10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
81     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
82     40ge2p1xl710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-ndrdisc
83     40ge2p1xl710-eth-l2xcbase-ndrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-ndrdisc
84
85 VPP NDR Throughput - running in configuration of **four worker threads (4t) on
86 four physical cores (4c)** - is presented in the figure below.
87
88 .. raw:: html
89
90     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-l2-ndrdisc.html"></iframe>
91
92 *Figure 3. VPP 4threads 4cores - NDR Throughput for Phy-to-Phy L2 Ethernet
93 Switching.*
94
95 CSIT test cases used to generate results presented above can be found in CSIT
96 git repository by filtering with specified regex as follows:
97
98 .. code-block:: bash
99
100     $ csit/tests/perf
101     $ grep -E "64B-4t4c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-ndrdisc" *
102
103     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
104     10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc13-64B-4t4c-dot1ad-l2xcbase-ndrdisc
105     10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc13-64B-4t4c-dot1q-l2xcbase-ndrdisc
106     10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
107     10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc13-64B-4t4c-eth-l2xcbase-ndrdisc
108     10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
109     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
110     40ge2p1xl710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc13-64B-4t4c-eth-l2bdbasemaclrn-ndrdisc
111     40ge2p1xl710-eth-l2xcbase-ndrdisc.robot:| tc13-64B-4t4c-eth-l2xcbase-ndrdisc
112
113 PDR Throughput
114 ~~~~~~~~~~~~~~
115
116 VPP PDR Throughput - running in configuration of **one worker thread (1t) on one
117 physical core (1c)** - is presented in the figure below. PDR at below 0.5% packet
118 loss ratio.
119
120 .. raw:: html
121
122     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-l2-pdrdisc.html"></iframe>
123
124 *Figure 4. VPP 1thread 1core - PDR Throughput for Phy-to-Phy L2 Ethernet
125 Switching.*
126
127 CSIT test cases used to generate results presented above can be found in CSIT
128 git repository by filtering with specified regex as follows:
129
130 .. code-block:: bash
131
132     $ csit/tests/perf
133     $ grep -E "64B-1t1c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc" *
134
135     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
136     10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc02-64B-1t1c-dot1ad-l2xcbase-pdrdisc
137     10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc02-64B-1t1c-dot1q-l2xcbase-pdrdisc
138     10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
139     10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-pdrdisc
140     10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
141     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-pdrdisc
142
143 VPP PDR Throughput - running in configuration of **two worker threads (2t) on
144 two physical cores (2c)** - is presented in the figure below.
145
146 .. raw:: html
147
148     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-l2-pdrdisc.html"></iframe>
149
150 *Figure 5. VPP 2thread 2core - PDR Throughput for Phy-to-Phy L2 Ethernet
151 Switching.*
152
153 CSIT test cases used to generate results presented above can be found in CSIT
154 git repository by filtering with specified regex as follows:
155
156 .. code-block:: bash
157
158     $ csit/tests/perf
159     $ grep -E "64B-2t2c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc" *
160
161     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
162     10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc08-64B-2t2c-dot1ad-l2xcbase-pdrdisc
163     10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc08-64B-2t2c-dot1q-l2xcbase-pdrdisc
164     10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
165     10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-pdrdisc
166     10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
167     40ge2p1vic1385-eth-l2bdbasemaclrn-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-pdrdisc
168
169 VPP PDR Throughput - running in configuration of **four worker threads (4t) on
170 four physical cores (4c)** - is presented in the figure below.
171
172 .. raw:: html
173
174     <iframe width="700" height="700" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-l2-pdrdisc.html"></iframe>
175
176 *Figure 6. VPP 4thread 4core - PDR Throughput for Phy-to-Phy L2 Ethernet
177 Switching.*
178
179 CSIT test cases used to generate results presented above can be found in CSIT
180 git repository by filtering with specified regex as follows:
181
182 .. code-block:: bash
183
184     $ csit/tests/perf
185     $ grep -E "64B-4t4c-(eth|dot1q|dot1ad)-(l2xcbase|l2bdbasemaclrn)-pdrdisc" *
186
187     10ge2p1vic1227-eth-l2bdbasemaclrn-ndrdisc.robot:| tc14-64B-4t4c-eth-l2bdbasemaclrn-pdrdisc
188     10ge2p1x520-dot1ad-l2xcbase-ndrdisc.robot:| tc14-64B-4t4c-dot1ad-l2xcbase-pdrdisc
189     10ge2p1x520-dot1q-l2xcbase-ndrdisc.robot:| tc14-64B-4t4c-dot1q-l2xcbase-pdrdisc
190     10ge2p1x520-eth-l2bdbasemaclrn-ndrdisc.robot:| tc14-64B-4t4c-eth-l2bdbasemaclrn-pdrdisc
191     10ge2p1x520-eth-l2xcbase-ndrdisc.robot:| tc14-64B-4t4c-eth-l2xcbase-pdrdisc
192     10ge2p1x710-eth-l2bdbasemaclrn-ndrdisc.robot:| tc14-64B-4t4c-eth-l2bdbasemaclrn-pdrdisc
193