13ee567cfSAnatoly Burakov.. SPDX-License-Identifier: BSD-3-Clause 23ee567cfSAnatoly Burakov Copyright(c) 2018 Intel Corporation. 33ee567cfSAnatoly Burakov 43ee567cfSAnatoly BurakovLcore-related options 53ee567cfSAnatoly Burakov~~~~~~~~~~~~~~~~~~~~~ 63ee567cfSAnatoly Burakov 73ee567cfSAnatoly Burakov* ``-c <core mask>`` 83ee567cfSAnatoly Burakov 93ee567cfSAnatoly Burakov Set the hexadecimal bitmask of the cores to run on. 103ee567cfSAnatoly Burakov 113ee567cfSAnatoly Burakov* ``-l <core list>`` 123ee567cfSAnatoly Burakov 133ee567cfSAnatoly Burakov List of cores to run on 143ee567cfSAnatoly Burakov 153ee567cfSAnatoly Burakov The argument format is ``<c1>[-c2][,c3[-c4],...]`` 163ee567cfSAnatoly Burakov where ``c1``, ``c2``, etc are core indexes between 0 and 128. 173ee567cfSAnatoly Burakov 183ee567cfSAnatoly Burakov* ``--lcores <core map>`` 193ee567cfSAnatoly Burakov 203ee567cfSAnatoly Burakov Map lcore set to physical cpu set 213ee567cfSAnatoly Burakov 223ee567cfSAnatoly Burakov The argument format is:: 233ee567cfSAnatoly Burakov 243ee567cfSAnatoly Burakov <lcores[@cpus]>[<,lcores[@cpus]>...] 253ee567cfSAnatoly Burakov 263ee567cfSAnatoly Burakov Lcore and CPU lists are grouped by ``(`` and ``)`` Within the group. 273ee567cfSAnatoly Burakov The ``-`` character is used as a range separator and ``,`` is used as a 283ee567cfSAnatoly Burakov single number separator. 293ee567cfSAnatoly Burakov The grouping ``()`` can be omitted for single element group. 303ee567cfSAnatoly Burakov The ``@`` can be omitted if cpus and lcores have the same value. 313ee567cfSAnatoly Burakov 323ee567cfSAnatoly Burakov.. Note:: 333ee567cfSAnatoly Burakov At a given instance only one core option ``--lcores``, ``-l`` or ``-c`` can 343ee567cfSAnatoly Burakov be used. 353ee567cfSAnatoly Burakov 36cb056611SStephen Hemminger* ``--main-lcore <core ID>`` 373ee567cfSAnatoly Burakov 38cb056611SStephen Hemminger Core ID that is used as main. 393ee567cfSAnatoly Burakov 403ee567cfSAnatoly Burakov* ``-s <service core mask>`` 413ee567cfSAnatoly Burakov 423ee567cfSAnatoly Burakov Hexadecimal bitmask of cores to be used as service cores. 433ee567cfSAnatoly Burakov 443ee567cfSAnatoly BurakovDevice-related options 453ee567cfSAnatoly Burakov~~~~~~~~~~~~~~~~~~~~~~ 463ee567cfSAnatoly Burakov 47db27370bSStephen Hemminger* ``-b, --block <[domain:]bus:devid.func>`` 483ee567cfSAnatoly Burakov 49db27370bSStephen Hemminger Skip probing a PCI device to prevent EAL from using it. 50db27370bSStephen Hemminger Multiple -b options are allowed. 513ee567cfSAnatoly Burakov 523ee567cfSAnatoly Burakov.. Note:: 53db27370bSStephen Hemminger Block list cannot be used with the allow list ``-a`` option. 543ee567cfSAnatoly Burakov 55db27370bSStephen Hemminger* ``-a, --allow <[domain:]bus:devid.func>`` 563ee567cfSAnatoly Burakov 57db27370bSStephen Hemminger Add a PCI device in to the list of devices to probe. 583ee567cfSAnatoly Burakov 593ee567cfSAnatoly Burakov.. Note:: 60db27370bSStephen Hemminger Allow list cannot be used with the block list ``-b`` option. 613ee567cfSAnatoly Burakov 623ee567cfSAnatoly Burakov* ``--vdev <device arguments>`` 633ee567cfSAnatoly Burakov 643ee567cfSAnatoly Burakov Add a virtual device using the format:: 653ee567cfSAnatoly Burakov 663ee567cfSAnatoly Burakov <driver><id>[,key=val, ...] 673ee567cfSAnatoly Burakov 683ee567cfSAnatoly Burakov For example:: 693ee567cfSAnatoly Burakov 703ee567cfSAnatoly Burakov --vdev 'net_pcap0,rx_pcap=input.pcap,tx_pcap=output.pcap' 713ee567cfSAnatoly Burakov 723ee567cfSAnatoly Burakov* ``-d <path to shared object or directory>`` 733ee567cfSAnatoly Burakov 743ee567cfSAnatoly Burakov Load external drivers. An argument can be a single shared object file, or a 753ee567cfSAnatoly Burakov directory containing multiple driver shared objects. Multiple -d options are 763ee567cfSAnatoly Burakov allowed. 773ee567cfSAnatoly Burakov 783ee567cfSAnatoly Burakov* ``--no-pci`` 793ee567cfSAnatoly Burakov 803ee567cfSAnatoly Burakov Disable PCI bus. 813ee567cfSAnatoly Burakov 823ee567cfSAnatoly BurakovMultiprocessing-related options 833ee567cfSAnatoly Burakov~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 843ee567cfSAnatoly Burakov 853ee567cfSAnatoly Burakov* ``--proc-type <primary|secondary|auto>`` 863ee567cfSAnatoly Burakov 873ee567cfSAnatoly Burakov Set the type of the current process. 883ee567cfSAnatoly Burakov 898f29a607SAnatoly Burakov* ``--base-virtaddr <address>`` 908f29a607SAnatoly Burakov 918f29a607SAnatoly Burakov Attempt to use a different starting address for all memory maps of the 928f29a607SAnatoly Burakov primary DPDK process. This can be helpful if secondary processes cannot 938f29a607SAnatoly Burakov start due to conflicts in address map. 948f29a607SAnatoly Burakov 953ee567cfSAnatoly BurakovMemory-related options 963ee567cfSAnatoly Burakov~~~~~~~~~~~~~~~~~~~~~~ 973ee567cfSAnatoly Burakov 983ee567cfSAnatoly Burakov* ``-n <number of channels>`` 993ee567cfSAnatoly Burakov 1003ee567cfSAnatoly Burakov Set the number of memory channels to use. 1013ee567cfSAnatoly Burakov 1023ee567cfSAnatoly Burakov* ``-r <number of ranks>`` 1033ee567cfSAnatoly Burakov 1043ee567cfSAnatoly Burakov Set the number of memory ranks (auto-detected by default). 1053ee567cfSAnatoly Burakov 1063ee567cfSAnatoly Burakov* ``-m <megabytes>`` 1073ee567cfSAnatoly Burakov 1083ee567cfSAnatoly Burakov Amount of memory to preallocate at startup. 1093ee567cfSAnatoly Burakov 1103ee567cfSAnatoly Burakov* ``--in-memory`` 1113ee567cfSAnatoly Burakov 1123ee567cfSAnatoly Burakov Do not create any shared data structures and run entirely in memory. Implies 1133ee567cfSAnatoly Burakov ``--no-shconf`` and (if applicable) ``--huge-unlink``. 1143ee567cfSAnatoly Burakov 1153ee567cfSAnatoly Burakov* ``--iova-mode <pa|va>`` 1163ee567cfSAnatoly Burakov 1173ee567cfSAnatoly Burakov Force IOVA mode to a specific value. 1183ee567cfSAnatoly Burakov 119*42fbb8e8SDon Wallwork* ``--huge-worker-stack[=size]`` 120*42fbb8e8SDon Wallwork 121*42fbb8e8SDon Wallwork Allocate worker stack memory from hugepage memory. Stack size defaults 122*42fbb8e8SDon Wallwork to system pthread stack size unless the optional size (in kbytes) is 123*42fbb8e8SDon Wallwork specified. 124*42fbb8e8SDon Wallwork 1253ee567cfSAnatoly BurakovDebugging options 1263ee567cfSAnatoly Burakov~~~~~~~~~~~~~~~~~ 1273ee567cfSAnatoly Burakov 1283ee567cfSAnatoly Burakov* ``--no-shconf`` 1293ee567cfSAnatoly Burakov 1303ee567cfSAnatoly Burakov No shared files created (implies no secondary process support). 1313ee567cfSAnatoly Burakov 1323ee567cfSAnatoly Burakov* ``--no-huge`` 1333ee567cfSAnatoly Burakov 1343ee567cfSAnatoly Burakov Use anonymous memory instead of hugepages (implies no secondary process 1353ee567cfSAnatoly Burakov support). 1363ee567cfSAnatoly Burakov 1373ee567cfSAnatoly Burakov* ``--log-level <type:val>`` 1383ee567cfSAnatoly Burakov 1393ee567cfSAnatoly Burakov Specify log level for a specific component. For example:: 1403ee567cfSAnatoly Burakov 14197fbfe5aSXiaolong Ye --log-level lib.eal:debug 1423ee567cfSAnatoly Burakov 1433ee567cfSAnatoly Burakov Can be specified multiple times. 1443ee567cfSAnatoly Burakov 1453d26a70aSSunil Kumar Kori* ``--trace=<regex-match>`` 1463d26a70aSSunil Kumar Kori 1473d26a70aSSunil Kumar Kori Enable trace based on regular expression trace name. By default, the trace is 1483d26a70aSSunil Kumar Kori disabled. User must specify this option to enable trace. 1493d26a70aSSunil Kumar Kori For example: 1503d26a70aSSunil Kumar Kori 1513d26a70aSSunil Kumar Kori Global trace configuration for EAL only:: 1523d26a70aSSunil Kumar Kori 1533d26a70aSSunil Kumar Kori --trace=eal 1543d26a70aSSunil Kumar Kori 1553d26a70aSSunil Kumar Kori Global trace configuration for ALL the components:: 1563d26a70aSSunil Kumar Kori 1573d26a70aSSunil Kumar Kori --trace=.* 1583d26a70aSSunil Kumar Kori 1593d26a70aSSunil Kumar Kori Can be specified multiple times up to 32 times. 1603d26a70aSSunil Kumar Kori 1618af866dfSSunil Kumar Kori* ``--trace-dir=<directory path>`` 1628af866dfSSunil Kumar Kori 1638af866dfSSunil Kumar Kori Specify trace directory for trace output. For example: 1648af866dfSSunil Kumar Kori 1658af866dfSSunil Kumar Kori Configuring ``/tmp/`` as a trace output directory:: 1668af866dfSSunil Kumar Kori 1678af866dfSSunil Kumar Kori --trace-dir=/tmp 1688af866dfSSunil Kumar Kori 1698af866dfSSunil Kumar Kori By default, trace output will created at ``home`` directory and parameter 1708af866dfSSunil Kumar Kori must be specified once only. 1718af866dfSSunil Kumar Kori 17244ab5377SSunil Kumar Kori* ``--trace-bufsz=<val>`` 17344ab5377SSunil Kumar Kori 17444ab5377SSunil Kumar Kori Specify maximum size of allocated memory for trace output for each thread. 17544ab5377SSunil Kumar Kori Valid unit can be either ``B`` or ``K`` or ``M`` for ``Bytes``, ``KBytes`` 17644ab5377SSunil Kumar Kori and ``MBytes`` respectively. For example: 17744ab5377SSunil Kumar Kori 17844ab5377SSunil Kumar Kori Configuring ``2MB`` as a maximum size for trace output file:: 17944ab5377SSunil Kumar Kori 18044ab5377SSunil Kumar Kori --trace-bufsz=2M 18144ab5377SSunil Kumar Kori 18244ab5377SSunil Kumar Kori By default, size of trace output file is ``1MB`` and parameter 18344ab5377SSunil Kumar Kori must be specified once only. 18444ab5377SSunil Kumar Kori 1858c8066eaSSunil Kumar Kori* ``--trace-mode=<o[verwrite] | d[iscard] >`` 1868c8066eaSSunil Kumar Kori 1878c8066eaSSunil Kumar Kori Specify the mode of update of trace output file. Either update on a file 1888c8066eaSSunil Kumar Kori can be wrapped or discarded when file size reaches its maximum limit. 1898c8066eaSSunil Kumar Kori For example: 1908c8066eaSSunil Kumar Kori 1918c8066eaSSunil Kumar Kori To ``discard`` update on trace output file:: 1928c8066eaSSunil Kumar Kori 1938c8066eaSSunil Kumar Kori --trace-mode=d or --trace-mode=discard 1948c8066eaSSunil Kumar Kori 1958c8066eaSSunil Kumar Kori Default mode is ``overwrite`` and parameter must be specified once only. 1968c8066eaSSunil Kumar Kori 1973ee567cfSAnatoly BurakovOther options 1983ee567cfSAnatoly Burakov~~~~~~~~~~~~~ 1993ee567cfSAnatoly Burakov 2003ee567cfSAnatoly Burakov* ``-h``, ``--help`` 2013ee567cfSAnatoly Burakov 2023ee567cfSAnatoly Burakov Display help message listing all EAL parameters. 2033ee567cfSAnatoly Burakov 2043ee567cfSAnatoly Burakov* ``-v`` 2053ee567cfSAnatoly Burakov 2063ee567cfSAnatoly Burakov Display the version information on startup. 2073ee567cfSAnatoly Burakov 20865c2bbf4SDavid Marchand* ``--mbuf-pool-ops-name``: 2093ee567cfSAnatoly Burakov 2103ee567cfSAnatoly Burakov Pool ops name for mbuf to use. 21124cd1b52SCiara Power 21224cd1b52SCiara Power* ``--telemetry``: 21324cd1b52SCiara Power 21424cd1b52SCiara Power Enable telemetry (enabled by default). 21524cd1b52SCiara Power 21624cd1b52SCiara Power* ``--no-telemetry``: 21724cd1b52SCiara Power 21824cd1b52SCiara Power Disable telemetry. 219580af30dSCiara Power 220580af30dSCiara Power* ``--force-max-simd-bitwidth=<val>``: 221580af30dSCiara Power 222580af30dSCiara Power Specify the maximum SIMD bitwidth size to handle. This limits which vector paths, 223580af30dSCiara Power if any, are taken, as any paths taken must use a bitwidth below the max bitwidth limit. 224580af30dSCiara Power For example, to allow all SIMD bitwidths up to and including AVX-512:: 225580af30dSCiara Power 226580af30dSCiara Power --force-max-simd-bitwidth=512 227580af30dSCiara Power 228580af30dSCiara Power The following example shows limiting the bitwidth to 64-bits to disable all vector code:: 229580af30dSCiara Power 230580af30dSCiara Power --force-max-simd-bitwidth=64 231580af30dSCiara Power 232580af30dSCiara Power To disable use of max SIMD bitwidth limit:: 233580af30dSCiara Power 234580af30dSCiara Power --force-max-simd-bitwidth=0 235