96baa4a9b0dee299c13991c415d8f81178076a9c
[dpdk.git] / doc / guides / linux_gsg / eal_args.include.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2018 Intel Corporation.
3
4 Lcore-related options
5 ~~~~~~~~~~~~~~~~~~~~~
6
7 *   ``-c <core mask>``
8
9     Set the hexadecimal bitmask of the cores to run on.
10
11 *   ``-l <core list>``
12
13     List of cores to run on
14
15     The argument format is ``<c1>[-c2][,c3[-c4],...]``
16     where ``c1``, ``c2``, etc are core indexes between 0 and 128.
17
18 *   ``--lcores <core map>``
19
20     Map lcore set to physical cpu set
21
22     The argument format is::
23
24        <lcores[@cpus]>[<,lcores[@cpus]>...]
25
26     Lcore and CPU lists are grouped by ``(`` and ``)`` Within the group.
27     The ``-`` character is used as a range separator and ``,`` is used as a
28     single number separator.
29     The grouping ``()`` can be omitted for single element group.
30     The ``@`` can be omitted if cpus and lcores have the same value.
31
32 .. Note::
33     At a given instance only one core option ``--lcores``, ``-l`` or ``-c`` can
34     be used.
35
36 *   ``--main-lcore <core ID>``
37
38     Core ID that is used as main.
39
40 *   ``-s <service core mask>``
41
42     Hexadecimal bitmask of cores to be used as service cores.
43
44 Device-related options
45 ~~~~~~~~~~~~~~~~~~~~~~
46
47 *   ``-b, --block <[domain:]bus:devid.func>``
48
49     Skip probing a PCI device to prevent EAL from using it.
50     Multiple -b options are allowed.
51
52 .. Note::
53     Block list cannot be used with the allow list ``-a`` option.
54
55 *   ``-a, --allow <[domain:]bus:devid.func>``
56
57     Add a PCI device in to the list of devices to probe.
58
59 .. Note::
60     Allow list cannot be used with the block list ``-b`` option.
61
62 *   ``--vdev <device arguments>``
63
64     Add a virtual device using the format::
65
66        <driver><id>[,key=val, ...]
67
68     For example::
69
70        --vdev 'net_pcap0,rx_pcap=input.pcap,tx_pcap=output.pcap'
71
72 *   ``-d <path to shared object or directory>``
73
74     Load external drivers. An argument can be a single shared object file, or a
75     directory containing multiple driver shared objects. Multiple -d options are
76     allowed.
77
78 *   ``--no-pci``
79
80     Disable PCI bus.
81
82 Multiprocessing-related options
83 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
84
85 *   ``--proc-type <primary|secondary|auto>``
86
87     Set the type of the current process.
88
89 *   ``--base-virtaddr <address>``
90
91     Attempt to use a different starting address for all memory maps of the
92     primary DPDK process. This can be helpful if secondary processes cannot
93     start due to conflicts in address map.
94
95 Memory-related options
96 ~~~~~~~~~~~~~~~~~~~~~~
97
98 *   ``-n <number of channels>``
99
100     Set the number of memory channels to use.
101
102 *   ``-r <number of ranks>``
103
104     Set the number of memory ranks (auto-detected by default).
105
106 *   ``-m <megabytes>``
107
108     Amount of memory to preallocate at startup.
109
110 *   ``--in-memory``
111
112     Do not create any shared data structures and run entirely in memory. Implies
113     ``--no-shconf`` and (if applicable) ``--huge-unlink``.
114
115 *   ``--iova-mode <pa|va>``
116
117     Force IOVA mode to a specific value.
118
119 Debugging options
120 ~~~~~~~~~~~~~~~~~
121
122 *   ``--no-shconf``
123
124     No shared files created (implies no secondary process support).
125
126 *   ``--no-huge``
127
128     Use anonymous memory instead of hugepages (implies no secondary process
129     support).
130
131 *   ``--log-level <type:val>``
132
133     Specify log level for a specific component. For example::
134
135         --log-level lib.eal:debug
136
137     Can be specified multiple times.
138
139 *   ``--trace=<regex-match>``
140
141     Enable trace based on regular expression trace name. By default, the trace is
142     disabled. User must specify this option to enable trace.
143     For example:
144
145     Global trace configuration for EAL only::
146
147         --trace=eal
148
149     Global trace configuration for ALL the components::
150
151         --trace=.*
152
153     Can be specified multiple times up to 32 times.
154
155 *   ``--trace-dir=<directory path>``
156
157     Specify trace directory for trace output. For example:
158
159     Configuring ``/tmp/`` as a trace output directory::
160
161         --trace-dir=/tmp
162
163     By default, trace output will created at ``home`` directory and parameter
164     must be specified once only.
165
166 *   ``--trace-bufsz=<val>``
167
168     Specify maximum size of allocated memory for trace output for each thread.
169     Valid unit can be either ``B`` or ``K`` or ``M`` for ``Bytes``, ``KBytes``
170     and ``MBytes`` respectively. For example:
171
172     Configuring ``2MB`` as a maximum size for trace output file::
173
174         --trace-bufsz=2M
175
176     By default, size of trace output file is ``1MB`` and parameter
177     must be specified once only.
178
179 *   ``--trace-mode=<o[verwrite] | d[iscard] >``
180
181     Specify the mode of update of trace output file. Either update on a file
182     can be wrapped or discarded when file size reaches its maximum limit.
183     For example:
184
185     To ``discard`` update on trace output file::
186
187         --trace-mode=d or --trace-mode=discard
188
189     Default mode is ``overwrite`` and parameter must be specified once only.
190
191 Other options
192 ~~~~~~~~~~~~~
193
194 *   ``-h``, ``--help``
195
196     Display help message listing all EAL parameters.
197
198 *   ``-v``
199
200     Display the version information on startup.
201
202 *   ``mbuf-pool-ops-name``:
203
204     Pool ops name for mbuf to use.
205
206 *    ``--telemetry``:
207
208     Enable telemetry (enabled by default).
209
210 *    ``--no-telemetry``:
211
212     Disable telemetry.
213
214 *    ``--force-max-simd-bitwidth=<val>``:
215
216     Specify the maximum SIMD bitwidth size to handle. This limits which vector paths,
217     if any, are taken, as any paths taken must use a bitwidth below the max bitwidth limit.
218     For example, to allow all SIMD bitwidths up to and including AVX-512::
219
220         --force-max-simd-bitwidth=512
221
222     The following example shows limiting the bitwidth to 64-bits to disable all vector code::
223
224         --force-max-simd-bitwidth=64
225
226     To disable use of max SIMD bitwidth limit::
227
228         --force-max-simd-bitwidth=0