X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Ftestpmd_app_ug%2Frun_app.rst;h=eb48318353224ed26ec4e7fbe69f68733860ac80;hb=fc5bffb8b5ba17c110b8c3c35c6090e3345ad000;hp=fdf6ec7f903262bc49ee6740e2547cb696a331dc;hpb=bf5b2126bf44b2afa8ac579c03036acf9dacdcff;p=dpdk.git diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst index fdf6ec7f90..eb48318353 100644 --- a/doc/guides/testpmd_app_ug/run_app.rst +++ b/doc/guides/testpmd_app_ug/run_app.rst @@ -7,9 +7,9 @@ Running the Application EAL Command-line Options ------------------------ -Please refer to :doc:`../linux_gsg/linux_eal_parameters` or -:doc:`../freebsd_gsg/freebsd_eal_parameters` for a list of available EAL -command-line options. +Please refer to :doc:`EAL parameters (Linux) <../linux_gsg/linux_eal_parameters>` +or :doc:`EAL parameters (FreeBSD) <../freebsd_gsg/freebsd_eal_parameters>` for +a list of available EAL command-line options. Testpmd Command-line Options @@ -20,7 +20,7 @@ They must be separated from the EAL options, shown in the previous section, with .. code-block:: console - sudo ./testpmd -l 0-3 -n 4 -- -i --portmask=0x1 --nb-cores=2 + sudo ./dpdk-testpmd -l 0-3 -n 4 -- -i --portmask=0x1 --nb-cores=2 The command line options are: @@ -59,24 +59,31 @@ The command line options are: * ``--nb-cores=N`` Set the number of forwarding cores, - where 1 <= N <= "number of cores" or ``CONFIG_RTE_MAX_LCORE`` from the configuration file. + where 1 <= N <= "number of cores" or ``RTE_MAX_LCORE`` from the configuration file. The default value is 1. * ``--nb-ports=N`` Set the number of forwarding ports, - where 1 <= N <= "number of ports" on the board or ``CONFIG_RTE_MAX_ETHPORTS`` from the configuration file. + where 1 <= N <= "number of ports" on the board or ``RTE_MAX_ETHPORTS`` from the configuration file. The default value is the number of ports on the board. * ``--coremask=0xXX`` Set the hexadecimal bitmask of the cores running the packet forwarding test. - The master lcore is reserved for command line parsing only and cannot be masked on for packet forwarding. + The main lcore is reserved for command line parsing only and cannot be masked on for packet forwarding. * ``--portmask=0xXX`` Set the hexadecimal bitmask of the ports used by the packet forwarding test. +* ``--portlist=X`` + + Set the forwarding ports based on the user input used by the packet forwarding test. + '-' denotes a range of ports to set including the two specified port IDs + ',' separates multiple port values. + Possible examples like --portlist=0,1 or --portlist=0-2 or --portlist=0,1-2 etc + * ``--numa`` Enable NUMA-aware allocation of RX/TX rings and of RX memory buffers @@ -100,9 +107,12 @@ The command line options are: Set the socket from which all memory is allocated in NUMA mode, where 0 <= N < number of sockets on the board. -* ``--mbuf-size=N`` +* ``--mbuf-size=N[,N1[,...Nn]`` - Set the data size of the mbufs used to N bytes, where N < 65536. The default value is 2048. + Set the data size of the mbufs used to N bytes, where N < 65536. + The default value is 2048. If multiple mbuf-size values are specified the + extra memory pools will be created for allocating mbufs to receive packets + with buffer splittling features. * ``--total-num-mbufs=N`` @@ -112,6 +122,10 @@ The command line options are: Set the maximum packet size to N bytes, where N >= 64. The default value is 1518. +* ``--max-lro-pkt-size=N`` + + Set the maximum LRO aggregated packet size to N bytes, where N >= 64. + * ``--eth-peers-configfile=name`` Use a configuration file containing the Ethernet addresses of the peer ports. @@ -124,14 +138,14 @@ The command line options are: * ``--eth-peer=N,XX:XX:XX:XX:XX:XX`` Set the MAC address ``XX:XX:XX:XX:XX:XX`` of the peer port N, - where 0 <= N < ``CONFIG_RTE_MAX_ETHPORTS`` from the configuration file. + where 0 <= N < ``RTE_MAX_ETHPORTS``. * ``--tx-ip=SRC,DST`` Set the source and destination IP address used when doing transmit only test. - The defaults address values are source 192.18.0.1 and - destination 192.18.0.2. These are special purpose addresses - reserved for benchmarking (RFC 2544). + The defaults address values are source 198.18.0.1 and + destination 198.18.0.2. These are special purpose addresses + reserved for benchmarking (RFC 5735). * ``--tx-udp=SRC[,DST]`` @@ -198,6 +212,10 @@ The command line options are: Enable hardware VLAN extend. +* ``--enable-hw-qinq-strip`` + + Enable hardware QINQ strip. + * ``--enable-drop-en`` Enable per-queue packet drop for packets with no descriptors. @@ -233,6 +251,7 @@ The command line options are: ieee1588 tm noisy + 5tswap * ``--rss-ip`` @@ -262,6 +281,17 @@ The command line options are: Set the number of descriptors in the TX rings to N, where N > 0. The default value is 512. +* ``--hairpinq=N`` + + Set the number of hairpin queues per port to N, where 1 <= N <= 65535. + The default value is 0. The number of hairpin queues are added to the + number of TX queues and to the number of RX queues. then the first + RX hairpin is binded to the first TX hairpin, the second RX hairpin is + binded to the second TX hairpin and so on. The index of the first + RX hairpin queue is the number of RX queues as configured using --rxq. + The index of the first TX hairpin queue is the number of TX queues + as configured using --txq. + * ``--burst=N`` Set the number of packets per burst to N, where 1 <= N <= 512. @@ -269,6 +299,13 @@ The command line options are: If set to 0, driver default is used if defined. Else, if driver default is not defined, default of 32 is used. +* ``--flowgen-clones=N`` + + Set the number of each packet clones to be sent in `flowgen` mode. + Sending clones reduces host CPU load on creating packets and may help + in testing extreme speeds or maxing out Tx packet performance. + N should be not zero, but less than 'burst' parameter. + * ``--mbcache=N`` Set the cache of mbuf memory pools to N, where 0 <= N <= 512. @@ -319,17 +356,24 @@ The command line options are: Set the transmit RS bit threshold of TX rings to N, where 0 <= N <= value of ``--txd``. The default value is 0. -* ``--rx-queue-stats-mapping=(port,queue,mapping)[,(port,queue,mapping)]`` +* ``--no-flush-rx`` - Set the RX queues statistics counters mapping 0 <= mapping <= 15. + Don't flush the RX streams before starting forwarding. Used mainly with the PCAP PMD. -* ``--tx-queue-stats-mapping=(port,queue,mapping)[,(port,queue,mapping)]`` +* ``--rxoffs=X[,Y]`` - Set the TX queues statistics counters mapping 0 <= mapping <= 15. + Set the offsets of packet segments on receiving if split + feature is engaged. Affects only the queues configured + with split offloads (currently BUFFER_SPLIT is supported only). -* ``--no-flush-rx`` +* ``--rxpkts=X[,Y]`` - Don't flush the RX streams before starting forwarding. Used mainly with the PCAP PMD. + Set the length of segments to scatter packets on receiving if split + feature is engaged. Affects only the queues configured + with split offloads (currently BUFFER_SPLIT is supported only). + Optionally the multiple memory pools can be specified with --mbuf-size + command line parameter and the mbufs to receive will be allocated + sequentially from these extra memory pools. * ``--txpkts=X[,Y]`` @@ -340,10 +384,31 @@ The command line options are: Generate multiple flows in txonly mode. +* ``--eth-link-speed`` + + Set a forced link speed to the ethernet port:: + + 10 - 10Mbps (not supported) + 100 - 100Mbps (not supported) + 1000 - 1Gbps + 10000 - 10Gbps + 25000 - 25Gbps + 40000 - 40Gbps + 50000 - 50Gbps + 100000 - 100Gbps + 200000 - 200Gbps + ... + * ``--disable-link-check`` Disable check on link status when starting/stopping ports. +* ``--disable-device-start`` + + Do not automatically start all ports. This allows testing + configuration of rx and tx queues before device is started + for the first time. + * ``--no-lsc-interrupt`` Disable LSC interrupts for all ports, even those supporting it. @@ -356,12 +421,12 @@ The command line options are: Set the logical core N to perform bitrate calculation. -* ``--print-event `` +* ``--print-event `` Enable printing the occurrence of the designated event. Using all will enable all of them. -* ``--mask-event `` +* ``--mask-event `` Disable printing the occurrence of the designated event. Using all will disable all of them. @@ -379,15 +444,26 @@ The command line options are: Set the hexadecimal bitmask of TX queue offloads. The default value is 0. +* ``--rx-offloads=0xXXXXXXXX`` + + Set the hexadecimal bitmask of RX queue offloads. + The default value is 0. + * ``--hot-plug`` - Enable device event monitor mechanism for hot plug. + Enable device event monitor mechanism for hotplug. * ``--vxlan-gpe-port=N`` Set the UDP port number of tunnel VXLAN-GPE to N. The default value is 4790. +* ``--geneve-parsed-port=N`` + + Set the UDP port number that is used for parsing the GENEVE protocol to N. + HW may be configured with another tunnel Geneve port. + The default value is 6081. + * ``--mlockall`` Enable locking all memory. @@ -421,26 +497,51 @@ The command line options are: * ``--noisy-lkup-memory=N`` - Set the size of the noisy neighbour simulation memory buffer in MB to N. + Set the size of the noisy neighbor simulation memory buffer in MB to N. Only available with the noisy forwarding mode. The default value is 0. * ``--noisy-lkup-num-reads=N`` - Set the number of reads to be done in noisy neighbour simulation memory buffer to N. + Set the number of reads to be done in noisy neighbor simulation memory buffer to N. Only available with the noisy forwarding mode. The default value is 0. * ``--noisy-lkup-num-writes=N`` - Set the number of writes to be done in noisy neighbour simulation memory buffer to N. + Set the number of writes to be done in noisy neighbor simulation memory buffer to N. Only available with the noisy forwarding mode. The default value is 0. * ``--noisy-lkup-num-reads-writes=N`` - Set the number of r/w accesses to be done in noisy neighbour simulation memory buffer to N. + Set the number of r/w accesses to be done in noisy neighbor simulation memory buffer to N. Only available with the noisy forwarding mode. The default value is 0. * ``--no-iova-contig`` Enable to create mempool which is not IOVA contiguous. Valid only with --mp-alloc=anon. The default value is 0. + +* ``--rx-mq-mode`` + + Set the hexadecimal bitmask of RX multi queue mode which can be enabled. + The default value is 0x7:: + + ETH_MQ_RX_RSS_FLAG | ETH_MQ_RX_DCB_FLAG | ETH_MQ_RX_VMDQ_FLAG + +* ``--record-core-cycles`` + + Enable measurement of CPU cycles per packet. + +* ``--record-burst-stats`` + + Enable display of RX and TX burst stats. + +* ``--hairpin-mode=0xXX`` + + Set the hairpin port mode with bitmask, only valid when hairpin queues number is set:: + + bit 4 - explicit Tx flow rule + bit 1 - two hairpin ports paired + bit 0 - two hairpin ports loop + + The default value is 0. Hairpin will use single port mode and implicit Tx flow mode.