7f20c7a91ee1d5c7ac2b142039bdcb4a0c041184
[csit.git] / docs / report / vpp_performance_tests / packet_throughput_graphs / vm_vhost.rst
1 VM vhost Connections
2 ====================
3
4 Following sections provide a summary of VPP Phy-to-VM-to-Phy VM vhost-user
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-1704 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-1704-all
20     <https://jenkins.fd.io/view/csit/job/csit-vpp-perf-1704-all/>`_ ,
21     ii) archived FD.io jobs test result `output files
22     <../../_static/archive/>`_.
23
24 NDR Throughput
25 ~~~~~~~~~~~~~~
26
27 VPP NDR Throughput - running in configuration of **one worker thread (1t) on one
28 physical core (1c)** - is presented in the figure below.
29
30 .. raw:: html
31
32     <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-vhost-ndrdisc.html"></iframe>
33
34 *Figure 1. VPP 1thread 1core - NDR Throughput for Phy-to-VM-to-Phy VM
35 vhost-user.*
36
37 CSIT test cases used to generate results presented above can be found in CSIT
38 git repository by filtering with specified regex as follows:
39
40 .. code-block:: bash
41
42     $ csit/tests/perf
43     $ grep -E "64B-1t1c-.*vhost.*-ndrdisc" *
44
45     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
46     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
47     10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc
48     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
49     10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
50     10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
51     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
52     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc01-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
53
54 VPP NDR Throughput - running in configuration of **two worker threads (2t) on
55 two physical cores (2c)** - is presented in the figure below.
56
57 .. raw:: html
58
59     <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-vhost-ndrdisc.html"></iframe>
60
61 *Figure 2. VPP 2threads 2cores - NDR Throughput for Phy-to-VM-to-Phy VM
62 vhost-user.*
63
64 CSIT test cases used to generate results presented above can be found in CSIT
65 git repository by filtering with specified regex as follows:
66
67 .. code-block:: bash
68
69     $ csit/tests/perf
70     $ grep -E "64B-2t2c-.*vhost.*-ndrdisc" *
71
72     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
73     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
74     10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-ethip4-ip4base-eth-2vhost-1vm-ndrdisc
75     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
76     10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
77     10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-ndrdisc
78     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
79     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc07-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc
80
81 VPP NDR Throughput - running in configuration of **four worker threads (4t) on
82 four physical cores (4c)** - is presented in the figure below.
83
84 .. raw:: html
85
86     <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/64B-4t4c-vhost-ndrdisc.html"></iframe>
87
88 PDR Throughput
89 ~~~~~~~~~~~~~~
90
91 VPP PDR Throughput - running in configuration of **one worker thread (1t) on one
92 physical core (1c)** - is presented in the figure below. PDR at below 0.5%
93 packet loss ratio.
94
95 .. raw:: html
96
97     <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/64B-1t1c-vhost-pdrdisc.html"></iframe>
98
99 *Figure 3. VPP 1thread 1core - PDR Throughput for Phy-to-VM-to-Phy VM
100 vhost-user.*
101
102 CSIT test cases used to generate results presented above can be found in CSIT
103 git repository by filtering with specified regex as follows:
104
105 .. code-block:: bash
106
107     $ csit/tests/perf
108     $ grep -E "64B-1t1c-.*vhost.*-pdrdisc" *
109
110     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
111     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
112     10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-ethip4-ip4base-eth-2vhost-1vm-pdrdisc
113     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
114     10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
115     10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
116     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
117     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc02-64B-1t1c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
118
119 VPP PDR Throughput - running in configuration of **two worker threads (2t) on
120 two physical cores (2c)** - is presented in the figure below.
121
122 .. raw:: html
123
124     <iframe width="700" height="1000" frameborder="0" scrolling="no" src="../../_static/vpp/64B-2t2c-vhost-pdrdisc.html"></iframe>
125
126 *Figure 4. VPP 2thread 2core - PDR Throughput for Phy-to-VM-to-Phy VM
127 vhost-user.*
128
129 CSIT test cases used to generate results presented above can be found in CSIT
130 git repository by filtering with specified regex as follows:
131
132 .. code-block:: bash
133
134     $ csit/tests/perf
135     $ grep -E "64B-2t2c-.*vhost.*-pdrdisc" *
136
137     10ge2p1x520-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-dot1q-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
138     10ge2p1x520-dot1q-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
139     10ge2p1x520-ethip4-ip4base-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-ethip4-ip4base-eth-2vhost-1vm-pdrdisc
140     10ge2p1x520-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-ethip4vxlan-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
141     10ge2p1x520-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
142     10ge2p1x520-eth-l2xcbase-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-eth-l2xcbase-eth-2vhost-1vm-pdrdisc
143     10ge2p1x710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
144     40ge2p1xl710-eth-l2bdbasemaclrn-eth-2vhost-1vm-ndrdisc.robot:| tc08-64B-2t2c-eth-l2bdbasemaclrn-eth-2vhost-1vm-pdrdisc
145

©2016 FD.io a Linux Foundation Collaborative Project. All Rights Reserved.
Linux Foundation is a registered trademark of The Linux Foundation. Linux is a registered trademark of Linus Torvalds.
Please see our privacy policy and terms of use.