1.. SPDX-License-Identifier: BSD-3-Clause 2 Copyright(c) 2018 Intel Corporation. 3 4Lcore-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 44Device-related options 45~~~~~~~~~~~~~~~~~~~~~~ 46 47* ``-b, --pci-blacklist <[domain:]bus:devid.func>`` 48 49 Blacklist a PCI device to prevent EAL from using it. Multiple -b options are 50 allowed. 51 52.. Note:: 53 PCI blacklist cannot be used with ``-w`` option. 54 55* ``-w, --pci-whitelist <[domain:]bus:devid.func>`` 56 57 Add a PCI device in white list. 58 59.. Note:: 60 PCI whitelist cannot be used with ``-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 82Multiprocessing-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 95Memory-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 119Debugging 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 191Other 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 229