Report: add 3n-alt static content
[csit.git] / docs / report / introduction / physical_testbeds.rst
1 .. _tested_physical_topologies:
2
3 Performance Physical Testbeds
4 =============================
5
6 All :abbr:`FD.io (Fast Data Input/Ouput)` :abbr:`CSIT (Continuous System
7 Integration and Testing)` performance test results included in this
8 report are executed on the physical testbeds hosted by :abbr:`LF (Linux
9 Foundation)` FD.io project, unless otherwise noted.
10
11 Two physical server topology types are used:
12
13 - **2-Node Topology**: Consists of one server acting as a System Under
14   Test (SUT) and one server acting as a Traffic Generator (TG), with
15   both servers connected into a ring topology. Used for executing tests
16   that require frame encapsulations supported by TG.
17
18 - **3-Node Topology**: Consists of two servers acting as a Systems Under
19   Test (SUTs) and one server acting as a Traffic Generator (TG), with
20   all servers connected into a ring topology. Used for executing tests
21   that require frame encapsulations not supported by TG e.g. certain
22   overlay tunnel encapsulations and IPsec. Number of native Ethernet,
23   IPv4 and IPv6 encapsulation tests are also executed on these testbeds,
24   for comparison with 2-Node Topology.
25
26 Current FD.io production testbeds are built with SUT servers based on
27 the following processor architectures:
28
29 - Intel Xeon: Skylake Platinum 8180, Cascadelake 6252N, Icelake 8358.
30 - Intel Atom: Denverton C3858.
31 - Arm: TaiShan 2280, hip07-d05.
32 - AMD EPYC: Zen2 7532.
33
34 Server SUT performance depends on server and processor type, hence
35 results for testbeds based on different servers must be reported
36 separately, and compared if appropriate.
37
38 Complete technical specifications of compute servers used in CSIT
39 physical testbeds are maintained in FD.io CSIT repository:
40 https://git.fd.io/csit/tree/docs/lab/testbed_specifications.md.
41
42 Physical NICs and Drivers
43 -------------------------
44
45 SUT and TG servers are equipped with a number of different NIC models.
46
47 VPP is performance tested on SUTs with the following NICs and drivers:
48
49 #. 2p10GE: x550, x553 Intel (codename Niantic)
50    - DPDK Poll Mode Driver (PMD).
51 #. 4p10GE: x710-DA4 Intel (codename Fortville, FVL)
52    - DPDK PMD.
53    - AVF in PMD mode.
54    - AF_XDP in PMD mode.
55 #. 2p25GE: xxv710-DA2 Intel (codename Fortville, FVL)
56    - DPDK PMD.
57    - AVF in PMD mode.
58    - AF_XDP in PMD mode.
59 #. 2p100GE: cx556a-edat Mellanox ConnectX5
60    - RDMA_core in PMD mode.
61 #. 2p100GE: E810-2CQDA2 Intel (codename Columbiaville, CVL)
62    - DPDK PMD.
63    - AVF in PMD mode.
64
65 DPDK applications, testpmd and l3fwd, are performance tested on the same
66 SUTs exclusively with DPDK drivers for all NICs.
67
68 TRex running on TGs is using DPDK drivers for all NICs.
69
70 VPP hoststack tests utilize ab (Apache HTTP server benchmarking tool)
71 running on TGs and using Linux drivers for all NICs.
72
73 For more information see :ref:`vpp_test_environment`
74 and :ref:`dpdk_test_environment`.
75
76 2-Node AMD EPYC Zen2 (2n-zn2)
77 -----------------------------
78
79 One 2n-zn2 testbed in in operation in FD.io labs. It is built based on
80 two SuperMicro SuperMicro AS-1114S-WTRT servers, with SUT and TG servers
81 equipped with one AMD EPYC Zen2 7532 processor each (256 MB Cache, 2.40
82 GHz, 32 cores). 2n-zn2 physical topology is shown below.
83
84 .. only:: latex
85
86     .. raw:: latex
87
88         \begin{figure}[H]
89             \centering
90                 \graphicspath{{../_tmp/src/introduction/}}
91                 \includegraphics[width=0.90\textwidth]{testbed-2n-zn2}
92                 \label{fig:testbed-2n-zn2}
93         \end{figure}
94
95 .. only:: html
96
97     .. figure:: testbed-2n-zn2.svg
98         :alt: testbed-2n-zn2
99         :align: center
100
101 SUT NICs:
102
103 #. NIC-1: x710-DA4 4p10GE Intel.
104 #. NIC-2: xxv710-DA2 2p25GE Intel.
105 #. NIC-3: cx556a-edat ConnectX5 2p100GE Mellanox.
106
107 TG NICs:
108
109 #. NIC-1: x710-DA4 4p10GE Intel.
110 #. NIC-2: xxv710-DA2 2p25GE Intel.
111 #. NIC-3: cx556a-edat ConnectX5 2p100GE Mellanox.
112
113 All AMD EPYC Zen2 7532 servers run with AMD SMT enabled, doubling the
114 number of logical cores exposed to Linux.
115
116 2-Node Xeon Cascadelake (2n-clx)
117 --------------------------------
118
119 Three 2n-clx testbeds are in operation in FD.io labs. Each 2n-clx testbed
120 is built with two SuperMicro SYS-7049GP-TRT servers, SUTs are equipped with two
121 Intel Xeon Gold 6252N processors (35.75 MB Cache, 2.30 GHz, 24 cores).
122 TGs are equiped with Intel Xeon Cascade Lake Platinum 8280 processors (38.5 MB
123 Cache, 2.70 GHz, 28 cores). 2n-clx physical topology is shown below.
124
125 .. only:: latex
126
127     .. raw:: latex
128
129         \begin{figure}[H]
130             \centering
131                 \graphicspath{{../_tmp/src/introduction/}}
132                 \includegraphics[width=0.90\textwidth]{testbed-2n-clx}
133                 \label{fig:testbed-2n-clx}
134         \end{figure}
135
136 .. only:: html
137
138     .. figure:: testbed-2n-clx.svg
139         :alt: testbed-2n-clx
140         :align: center
141
142 SUT NICs:
143
144 #. NIC-1: x710-DA4 4p10GE Intel.
145 #. NIC-2: xxv710-DA2 2p25GE Intel.
146 #. NIC-3: cx556a-edat ConnectX5 2p100GE Mellanox.
147 #. NIC-4: empty, future expansion.
148 #. NIC-5: empty, future expansion.
149 #. NIC-6: empty, future expansion.
150
151 TG NICs:
152
153 #. NIC-1: x710-DA4 4p10GE Intel.
154 #. NIC-2: xxv710-DA2 2p25GE Intel.
155 #. NIC-3: cx556a-edat ConnectX5 2p100GE Mellanox.
156 #. NIC-4: empty, future expansion.
157 #. NIC-5: empty, future expansion.
158 #. NIC-6: x710-DA4 4p10GE Intel. (For self-tests.)
159
160 All Intel Xeon Cascadelake servers run with Intel Hyper-Threading enabled,
161 doubling the number of logical cores exposed to Linux.
162
163 .. _physical_testbeds_2n_icx:
164
165 2-Node Xeon Icelake (2n-icx)
166 ----------------------------
167
168 One 2n-icx testbed is in operation in FD.io labs. It is built with two
169 SuperMicro SYS-740GP-TNRT servers, each in turn equipped with two Intel Xeon
170 Platinum 8358 processors (48 MB Cache, 2.60 GHz, 32 cores).
171
172 .. only:: latex
173
174     .. raw:: latex
175
176         \begin{figure}[H]
177             \centering
178                 \graphicspath{{../_tmp/src/introduction/}}
179                 \includegraphics[width=0.90\textwidth]{testbed-2n-icx}
180                 \label{fig:testbed-2n-icx}
181         \end{figure}
182
183 .. only:: html
184
185     .. figure:: testbed-2n-icx.svg
186         :alt: testbed-2n-icx
187         :align: center
188
189 SUT and TG NICs:
190
191 #. NIC-1: xxv710-DA2 2p25GE Intel.
192 #. NIC-2: E810-2CQDA2 2p100GbE Intel (* to be added).
193 #. NIC-3: E810-CQDA4 4p100GbE Intel (* to be added).
194
195 All Intel Xeon Icelake servers run with Intel Hyper-Threading enabled,
196 doubling the number of logical cores exposed to Linux.
197
198 .. _physical_testbeds_3n_icx:
199
200 3-Node Xeon Icelake (3n-icx)
201 ----------------------------
202
203 One 3n-icx testbed is in operation in FD.io labs. It is built with three
204 SuperMicro SYS-740GP-TNRT servers, each in turn equipped with two Intel Xeon
205 Platinum 8358 processors (48 MB Cache, 2.60 GHz, 32 cores).
206
207 .. only:: latex
208
209     .. raw:: latex
210
211         \begin{figure}[H]
212             \centering
213                 \graphicspath{{../_tmp/src/introduction/}}
214                 \includegraphics[width=0.90\textwidth]{testbed-3n-icx}
215                 \label{fig:testbed-3n-icx}
216         \end{figure}
217
218 .. only:: html
219
220     .. figure:: testbed-3n-icx.svg
221         :alt: testbed-3n-icx
222         :align: center
223
224 SUT and TG NICs:
225
226 #. NIC-1: xxv710-DA2 2p25GE Intel.
227 #. NIC-2: E810-2CQDA2 2p100GbE Intel (* to be added).
228 #. NIC-3: E810-CQDA4 4p100GbE Intel (* to be added).
229
230 All Intel Xeon Icelake servers run with Intel Hyper-Threading enabled,
231 doubling the number of logical cores exposed to Linux.
232
233 2-Node Xeon Skylake (2n-skx)
234 ----------------------------
235
236 Four 2n-skx testbeds are in operation in FD.io labs. Each 2n-skx testbed
237 is built with two SuperMicro SYS-7049GP-TRT servers, each in turn
238 equipped with two Intel Xeon Skylake Platinum 8180 processors (38.5 MB
239 Cache, 2.50 GHz, 28 cores). 2n-skx physical topology is shown below.
240
241 .. only:: latex
242
243     .. raw:: latex
244
245         \begin{figure}[H]
246             \centering
247                 \graphicspath{{../_tmp/src/introduction/}}
248                 \includegraphics[width=0.90\textwidth]{testbed-2n-skx}
249                 \label{fig:testbed-2n-skx}
250         \end{figure}
251
252 .. only:: html
253
254     .. figure:: testbed-2n-skx.svg
255         :alt: testbed-2n-skx
256         :align: center
257
258 SUT NICs:
259
260 #. NIC-1: x710-DA4 4p10GE Intel.
261 #. NIC-2: xxv710-DA2 2p25GE Intel.
262 #. NIC-3: empty, future expansion.
263 #. NIC-4: empty, future expansion.
264 #. NIC-5: empty, future expansion.
265 #. NIC-6: empty, future expansion.
266
267 TG NICs:
268
269 #. NIC-1: x710-DA4 4p10GE Intel.
270 #. NIC-2: xxv710-DA2 2p25GE Intel.
271 #. NIC-3: empty, future expansion.
272 #. NIC-4: empty, future expansion.
273 #. NIC-5: empty, future expansion.
274 #. NIC-6: x710-DA4 4p10GE Intel. (For self-tests.)
275
276 All Intel Xeon Skylake servers run with Intel Hyper-Threading enabled,
277 doubling the number of logical cores exposed to Linux, with 56 logical
278 cores and 28 physical cores per processor socket.
279
280 3-Node Xeon Skylake (3n-skx)
281 ----------------------------
282
283 Two 3n-skx testbeds are in operation in FD.io labs. Each 3n-skx testbed
284 is built with three SuperMicro SYS-7049GP-TRT servers, each in turn
285 equipped with two Intel Xeon Skylake Platinum 8180 processors (38.5 MB
286 Cache, 2.50 GHz, 28 cores). 3n-skx physical topology is shown below.
287
288 .. only:: latex
289
290     .. raw:: latex
291
292         \begin{figure}[H]
293             \centering
294                 \graphicspath{{../_tmp/src/introduction/}}
295                 \includegraphics[width=0.90\textwidth]{testbed-3n-skx}
296                 \label{fig:testbed-3n-skx}
297         \end{figure}
298
299 .. only:: html
300
301     .. figure:: testbed-3n-skx.svg
302         :alt: testbed-3n-skx
303         :align: center
304
305 SUT1 and SUT2 NICs:
306
307 #. NIC-1: x710-DA4 4p10GE Intel.
308 #. NIC-2: xxv710-DA2 2p25GE Intel.
309 #. NIC-3: empty, future expansion.
310 #. NIC-4: empty, future expansion.
311 #. NIC-5: empty, future expansion.
312 #. NIC-6: empty, future expansion.
313
314 TG NICs:
315
316 #. NIC-1: x710-DA4 4p10GE Intel.
317 #. NIC-2: xxv710-DA2 2p25GE Intel.
318 #. NIC-3: empty, future expansion.
319 #. NIC-4: empty, future expansion.
320 #. NIC-5: empty, future expansion.
321 #. NIC-6: x710-DA4 4p10GE Intel. (For self-tests.)
322
323 All Intel Xeon Skylake servers run with Intel Hyper-Threading enabled,
324 doubling the number of logical cores exposed to Linux, with 56 logical
325 cores and 28 physical cores per processor socket.
326
327 2-Node Atom Denverton (2n-dnv)
328 ------------------------------
329
330 2n-dnv testbed is built with: i) one Intel S2600WFT server acting as TG
331 and equipped with two Intel Xeon Skylake Platinum 8180 processors (38.5
332 MB Cache, 2.50 GHz, 28 cores), and ii) one SuperMicro SYS-E300-9A server
333 acting as SUT and equipped with one Intel Atom C3858 processor (12 MB
334 Cache, 2.00 GHz, 12 cores). 2n-dnv physical topology is shown below.
335
336 .. only:: latex
337
338     .. raw:: latex
339
340         \begin{figure}[H]
341             \centering
342                 \graphicspath{{../_tmp/src/introduction/}}
343                 \includegraphics[width=0.90\textwidth]{testbed-2n-dnv}
344                 \label{fig:testbed-2n-dnv}
345         \end{figure}
346
347 .. only:: html
348
349     .. figure:: testbed-2n-dnv.svg
350         :alt: testbed-2n-dnv
351         :align: center
352
353 SUT 10GE NIC ports:
354
355 #. P-1: x553 copper port.
356 #. P-2: x553 copper port.
357 #. P-3: x553 fiber port.
358 #. P-4: x553 fiber port.
359
360 TG NICs:
361
362 #. NIC-1: x550-T2 2p10GE Intel.
363 #. NIC-2: x550-T2 2p10GE Intel.
364 #. NIC-3: x520-DA2 2p10GE Intel.
365 #. NIC-4: x520-DA2 2p10GE Intel.
366
367 The 2n-dnv testbed is in operation in Intel SH labs.
368
369 3-Node Atom Denverton (3n-dnv)
370 ------------------------------
371
372 One 3n-dnv testbed is built with: i) one SuperMicro SYS-7049GP-TRT
373 server acting as TG and equipped with two Intel Xeon Skylake Platinum
374 8180 processors (38.5 MB Cache, 2.50 GHz, 28 cores), and ii) one
375 SuperMicro SYS-E300-9A server acting as SUT and equipped with one Intel
376 Atom C3858 processor (12 MB Cache, 2.00 GHz, 12 cores). 3n-dnv physical
377 topology is shown below.
378
379 .. only:: latex
380
381     .. raw:: latex
382
383         \begin{figure}[H]
384             \centering
385                 \graphicspath{{../_tmp/src/introduction/}}
386                 \includegraphics[width=0.90\textwidth]{testbed-3n-dnv}
387                 \label{fig:testbed-3n-dnv}
388         \end{figure}
389
390 .. only:: html
391
392     .. figure:: testbed-3n-dnv.svg
393         :alt: testbed-3n-dnv
394         :align: center
395
396 SUT1 and SUT2 NICs:
397
398 #. NIC-1: x553 2p10GE fiber Intel.
399 #. NIC-2: x553 2p10GE copper Intel.
400
401 TG NICs:
402
403 #. NIC-1: x710-DA4 4p10GE Intel.
404
405 .. _physical_testbeds_3n_alt:
406
407 3-Node ARM Altra (3n-alt)
408 ---------------------------
409
410 One 3n-tsh testbed is built with: i) one SuperMicro SYS-740GP-TNRT
411 server acting as TG and equipped with two Intel Xeon Icelake Platinum
412 8358 processors (80 MB Cache, 2.60 GHz, 32 cores), and ii) one Ampere
413 Altra server acting as SUT and equipped with two Q80-30 processors
414 (80* ARM Neoverse N1). 3n-alt physical topology is shown below.
415
416 .. only:: latex
417
418     .. raw:: latex
419
420         \begin{figure}[H]
421             \centering
422                 \graphicspath{{../_tmp/src/introduction/}}
423                 \includegraphics[width=0.90\textwidth]{testbed-3n-alt}
424                 \label{fig:testbed-3n-alt}
425         \end{figure}
426
427 .. only:: html
428
429     .. figure:: testbed-3n-alt.svg
430         :alt: testbed-3n-alt
431         :align: center
432
433 SUT1 and SUT2 NICs:
434
435 #. NIC-1: xl710-QDA2-2p40GE Intel.
436
437 TG NICs:
438
439 #. NIC-1: xxv710-DA2-2p25GE Intel.
440 #. NIC-2: e810-XXVDA4-4p25GE Intel.
441 #. NIC-3: e810-2CQDA2-2p100GE Intel.
442
443 3-Node ARM TaiShan (3n-tsh)
444 ---------------------------
445
446 One 3n-tsh testbed is built with: i) one SuperMicro SYS-7049GP-TRT
447 server acting as TG and equipped with two Intel Xeon Skylake Platinum
448 8180 processors (38.5 MB Cache, 2.50 GHz, 28 cores), and ii) one Huawei
449 TaiShan 2280 server acting as SUT and equipped with one  hip07-d05
450 processor (64* ARM Cortex-A72). 3n-tsh physical topology is shown below.
451
452 .. only:: latex
453
454     .. raw:: latex
455
456         \begin{figure}[H]
457             \centering
458                 \graphicspath{{../_tmp/src/introduction/}}
459                 \includegraphics[width=0.90\textwidth]{testbed-3n-tsh}
460                 \label{fig:testbed-3n-tsh}
461         \end{figure}
462
463 .. only:: html
464
465     .. figure:: testbed-3n-tsh.svg
466         :alt: testbed-3n-tsh
467         :align: center
468
469 SUT1 and SUT2 NICs:
470
471 #. NIC-1: connectx4 2p25GE Mellanox.
472 #. NIC-2: x520 2p10GE Intel.
473
474 TG NICs:
475
476 #. NIC-1: x710-DA4 4p10GE Intel.
477 #. NIC-2: xxv710-DA2 2p25GE Intel.
478 #. NIC-3: xl710-QDA2 2p40GE Intel.
479
480 2-Node ARM ThunderX2 (2n-tx2)
481 -----------------------------
482
483 One 2n-tx2 testbed is built with: i) one SuperMicro SYS-7049GP-TRT
484 server acting as TG and equipped with two Intel Xeon Skylake Platinum
485 8180 processors (38.5 MB Cache, 2.50 GHz, 28 cores), and ii) one Marvell
486 ThnderX2 9975 (28* ThunderX2) server acting as SUT and equipped with two
487 ThunderX2 ARMv8 CN9975 processors. 2n-tx2 physical topology is shown below.
488
489 .. only:: latex
490
491     .. raw:: latex
492
493         \begin{figure}[H]
494             \centering
495                 \graphicspath{{../_tmp/src/introduction/}}
496                 \includegraphics[width=0.90\textwidth]{testbed-2n-tx2}
497                 \label{fig:testbed-2n-tx2}
498         \end{figure}
499
500 .. only:: html
501
502     .. figure:: testbed-2n-tx2.svg
503         :alt: testbed-2n-tx2
504         :align: center
505
506 SUT NICs:
507
508 #. NIC-1: xl710-QDA2 2p40GE Intel (not connected).
509 #. NIC-2: xl710-QDA2 2p40GE Intel.
510
511 TG NICs:
512
513 #. NIC-1: xl710-QDA2 2p40GE Intel.