CSIT-1488: Add data to the Report 1904
[csit.git] / docs / report / introduction / methodology_vpp_startup_settings.rst
1 VPP Startup Settings
2 --------------------
3
4 CSIT code manipulates a number of VPP settings in startup.conf for
5 optimized performance. List of common settings applied to all tests and
6 test dependent settings follows.
7
8 See `VPP startup.conf`_ for a complete set and description of listed
9 settings.
10
11 Common Settings
12 ~~~~~~~~~~~~~~~
13
14 List of VPP startup.conf settings applied to all tests:
15
16 #. heap-size <value> - set separately for ip4, ip6, stats, main
17    depending on scale tested.
18 #. no-tx-checksum-offload - disables UDP / TCP TX checksum offload in
19    DPDK. Typically needed for use faster vector PMDs (together with
20    no-multi-seg).
21 #. buffers-per-numa <value> - sets a number of memory buffers allocated
22    to VPP per CPU socket. VPP default is 16384. Needs to be increased for
23    scenarios with large number of interfaces and worker threads. To
24    accommodate for scale tests, CSIT is setting it to the maximum possible
25    value corresponding to the limit of DPDK memory mappings (currently
26    256). For Xeon Skylake platforms configured with 2MB hugepages and VPP
27    data-size and buffer-size defaults (2048B and 2496B respectively), this
28    results in value of 215040 (256 * 840 = 215040, 840 * 2496B buffers fit
29    in 2MB hugepage ). For Xeon Haswell nodes value of 107520 is used.
30
31 Per Test Settings
32 ~~~~~~~~~~~~~~~~~
33
34 List of vpp startup.conf settings applied dynamically per test:
35
36 #. corelist-workers <list_of_cores> - list of logical cores to run VPP
37    worker data plane threads. Depends on HyperThreading and core per
38    test configuration.
39 #. num-rx-queues <value> - depends on a number of VPP threads and NIC
40    interfaces.
41 #. no-multi-seg - disables multi-segment buffers in DPDK, improves
42    packet throughput, but disables Jumbo MTU support. Disabled for all
43    tests apart from the ones that require Jumbo 9000B frame support.
44 #. UIO driver - depends on topology file definition.
45 #. QAT VFs - depends on NRThreads, each thread = 1QAT VFs.