From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 0ED9598 for ; Tue, 21 Feb 2017 18:39:30 +0100 (CET) Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 21 Feb 2017 09:39:03 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,190,1484035200"; d="scan'208";a="68461306" Received: from davidpjo-mobl3.amr.corp.intel.com ([10.255.93.69]) by fmsmga006.fm.intel.com with ESMTP; 21 Feb 2017 09:39:02 -0800 From: Keith Wiles To: dpdk.org, dev@dpdk.org Cc: iryzhov@nfware.com, thomas.monjalon@6wind.com, john.mcnamara@intel.com Date: Tue, 21 Feb 2017 11:38:54 -0600 Message-Id: <20170221173854.81128-1-keith.wiles@intel.com> X-Mailer: git-send-email 2.10.1 MIME-Version: 1.0 In-Reply-To: <20170209181450.58466-1-keith.wiles@intel.com> References: <20170209181450.58466-1-keith.wiles@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v4] doc: use corelist instead of coremask X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Feb 2017 17:39:32 -0000 The coremask option in DPDK is difficult to use and we should be promoting the use of the corelist (-l) option. The patch adjusts the docs to use -l EAL option instead of the -c option. The patch only changes the docs and not the code as the -c option will continue to exist unless it is removed in the future. The -c option should be kept to maintain backward compatibility. Signed-off-by: Keith Wiles --- v4 - merge with latest release and fix typos. v3 - squash all of the changes into a single commit. v2 - reset changes to taskset back to using -c. doc/guides/contributing/documentation.rst | 2 +- doc/guides/cryptodevs/aesni_gcm.rst | 2 +- doc/guides/cryptodevs/aesni_mb.rst | 2 +- doc/guides/cryptodevs/kasumi.rst | 2 +- doc/guides/cryptodevs/null.rst | 2 +- doc/guides/cryptodevs/openssl.rst | 2 +- doc/guides/cryptodevs/snow3g.rst | 2 +- doc/guides/cryptodevs/zuc.rst | 2 +- doc/guides/faq/faq.rst | 6 +++-- doc/guides/freebsd_gsg/build_sample_apps.rst | 11 ++++---- doc/guides/freebsd_gsg/install_from_ports.rst | 2 +- doc/guides/howto/flow_bifurcation.rst | 4 +-- doc/guides/howto/lm_bond_virtio_sriov.rst | 2 +- doc/guides/howto/lm_virtio_vhost_user.rst | 2 +- .../howto/virtio_user_as_exceptional_path.rst | 4 +-- .../howto/virtio_user_for_container_networking.rst | 4 +-- doc/guides/linux_gsg/build_sample_apps.rst | 19 +++++++------- doc/guides/linux_gsg/nic_perf_intel_platform.rst | 2 +- doc/guides/linux_gsg/quick_start.rst | 2 +- doc/guides/nics/bnx2x.rst | 2 +- doc/guides/nics/cxgbe.rst | 4 +-- doc/guides/nics/ena.rst | 2 +- doc/guides/nics/i40e.rst | 6 ++--- doc/guides/nics/intel_vf.rst | 7 +++-- doc/guides/nics/ixgbe.rst | 4 +-- doc/guides/nics/mlx4.rst | 2 +- doc/guides/nics/mlx5.rst | 2 +- doc/guides/nics/pcap_ring.rst | 14 +++++----- doc/guides/nics/qede.rst | 2 +- doc/guides/nics/szedata2.rst | 2 +- doc/guides/nics/thunderx.rst | 2 +- doc/guides/nics/vhost.rst | 2 +- doc/guides/nics/virtio.rst | 6 ++--- .../prog_guide/link_bonding_poll_mode_drv_lib.rst | 10 ++++---- doc/guides/prog_guide/multi_proc_support.rst | 2 +- doc/guides/sample_app_ug/cmd_line.rst | 2 +- doc/guides/sample_app_ug/dist_app.rst | 2 +- doc/guides/sample_app_ug/exception_path.rst | 4 +-- doc/guides/sample_app_ug/hello_world.rst | 2 +- doc/guides/sample_app_ug/intel_quickassist.rst | 2 +- doc/guides/sample_app_ug/ip_frag.rst | 4 +-- doc/guides/sample_app_ug/ip_reassembly.rst | 4 +-- doc/guides/sample_app_ug/ipv4_multicast.rst | 2 +- doc/guides/sample_app_ug/keep_alive.rst | 2 +- doc/guides/sample_app_ug/kernel_nic_interface.rst | 4 +-- doc/guides/sample_app_ug/l2_forward_cat.rst | 6 ++--- doc/guides/sample_app_ug/l2_forward_crypto.rst | 2 +- doc/guides/sample_app_ug/l2_forward_job_stats.rst | 2 +- .../sample_app_ug/l2_forward_real_virtual.rst | 2 +- .../sample_app_ug/l3_forward_access_ctrl.rst | 2 +- doc/guides/sample_app_ug/link_status_intr.rst | 2 +- doc/guides/sample_app_ug/load_balancer.rst | 2 +- doc/guides/sample_app_ug/multi_process.rst | 30 +++++++++++----------- doc/guides/sample_app_ug/performance_thread.rst | 20 +++++++-------- doc/guides/sample_app_ug/ptpclient.rst | 2 +- doc/guides/sample_app_ug/qos_scheduler.rst | 6 ++--- doc/guides/sample_app_ug/quota_watermark.rst | 4 +-- doc/guides/sample_app_ug/rxtx_callbacks.rst | 2 +- doc/guides/sample_app_ug/skeleton.rst | 2 +- doc/guides/sample_app_ug/tep_termination.rst | 16 ++++++------ doc/guides/sample_app_ug/test_pipeline.rst | 2 +- doc/guides/sample_app_ug/timer.rst | 2 +- doc/guides/sample_app_ug/vhost.rst | 4 +-- doc/guides/sample_app_ug/vm_power_management.rst | 4 +-- doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst | 2 +- doc/guides/testpmd_app_ug/run_app.rst | 2 +- doc/guides/tools/cryptoperf.rst | 11 ++++---- doc/guides/xen/pkt_switch.rst | 10 ++++---- 68 files changed, 158 insertions(+), 150 deletions(-) diff --git a/doc/guides/contributing/documentation.rst b/doc/guides/contributing/documentation.rst index f90a3dd..4c85da7 100644 --- a/doc/guides/contributing/documentation.rst +++ b/doc/guides/contributing/documentation.rst @@ -457,7 +457,7 @@ Code and Literal block sections For long literal lines that exceed that limit try to wrap the text at sensible locations. For example a long command line could be documented like this and still work if copied directly from the docs:: - build/app/testpmd -c7 -n3 --vdev=net_pcap0,iface=eth0 \ + build/app/testpmd -l 0-2 -n3 --vdev=net_pcap0,iface=eth0 \ --vdev=net_pcap1,iface=eth1 \ -- -i --nb-cores=2 --nb-ports=2 \ --total-num-mbufs=2048 diff --git a/doc/guides/cryptodevs/aesni_gcm.rst b/doc/guides/cryptodevs/aesni_gcm.rst index e4b4108..ba9ecb5 100644 --- a/doc/guides/cryptodevs/aesni_gcm.rst +++ b/doc/guides/cryptodevs/aesni_gcm.rst @@ -84,7 +84,7 @@ Example: .. code-block:: console - ./l2fwd-crypto -c 40 -n 4 --vdev="crypto_aesni_gcm,socket_id=1,max_nb_sessions=128" + ./l2fwd-crypto -l 6 -n 4 --vdev="crypto_aesni_gcm,socket_id=1,max_nb_sessions=128" Limitations ----------- diff --git a/doc/guides/cryptodevs/aesni_mb.rst b/doc/guides/cryptodevs/aesni_mb.rst index a492b6f..d61d9e4 100644 --- a/doc/guides/cryptodevs/aesni_mb.rst +++ b/doc/guides/cryptodevs/aesni_mb.rst @@ -111,4 +111,4 @@ Example: .. code-block:: console - ./l2fwd-crypto -c 40 -n 4 --vdev="crypto_aesni_mb,socket_id=1,max_nb_sessions=128" + ./l2fwd-crypto -l 6 -n 4 --vdev="crypto_aesni_mb,socket_id=1,max_nb_sessions=128" diff --git a/doc/guides/cryptodevs/kasumi.rst b/doc/guides/cryptodevs/kasumi.rst index 90d8e7b..bb8522b 100644 --- a/doc/guides/cryptodevs/kasumi.rst +++ b/doc/guides/cryptodevs/kasumi.rst @@ -107,4 +107,4 @@ Example: .. code-block:: console - ./l2fwd-crypto -c 40 -n 4 --vdev="crypto_kasumi,socket_id=1,max_nb_sessions=128" + ./l2fwd-crypto -l 6 -n 4 --vdev="crypto_kasumi,socket_id=1,max_nb_sessions=128" diff --git a/doc/guides/cryptodevs/null.rst b/doc/guides/cryptodevs/null.rst index ec5bc70..e712e2b 100644 --- a/doc/guides/cryptodevs/null.rst +++ b/doc/guides/cryptodevs/null.rst @@ -93,4 +93,4 @@ Example: .. code-block:: console - ./l2fwd-crypto -c 40 -n 4 --vdev="crypto_null,socket_id=1,max_nb_sessions=128" + ./l2fwd-crypto -l 6 -n 4 --vdev="crypto_null,socket_id=1,max_nb_sessions=128" diff --git a/doc/guides/cryptodevs/openssl.rst b/doc/guides/cryptodevs/openssl.rst index f6ed6ea..3a28c9d 100644 --- a/doc/guides/cryptodevs/openssl.rst +++ b/doc/guides/cryptodevs/openssl.rst @@ -98,7 +98,7 @@ To verify real traffic l2fwd-crypto example can be used with this command: .. code-block:: console - sudo ./build/l2fwd-crypto -c 0x3 -n 4 --vdev "crypto_openssl" + sudo ./build/l2fwd-crypto -l 0-1 -n 4 --vdev "crypto_openssl" --vdev "crypto_openssl"-- -p 0x3 --chain CIPHER_HASH --cipher_op ENCRYPT --cipher_algo AES_CBC --cipher_key 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f diff --git a/doc/guides/cryptodevs/snow3g.rst b/doc/guides/cryptodevs/snow3g.rst index 75a08aa..3f811de 100644 --- a/doc/guides/cryptodevs/snow3g.rst +++ b/doc/guides/cryptodevs/snow3g.rst @@ -100,4 +100,4 @@ Example: .. code-block:: console - ./l2fwd-crypto -c 40 -n 4 --vdev="crypto_snow3g,socket_id=1,max_nb_sessions=128" + ./l2fwd-crypto -l 6 -n 4 --vdev="crypto_snow3g,socket_id=1,max_nb_sessions=128" diff --git a/doc/guides/cryptodevs/zuc.rst b/doc/guides/cryptodevs/zuc.rst index 38d5068..ed80c99 100644 --- a/doc/guides/cryptodevs/zuc.rst +++ b/doc/guides/cryptodevs/zuc.rst @@ -108,4 +108,4 @@ Example: .. code-block:: console - ./l2fwd-crypto -c 40 -n 4 --vdev="crypto_zuc,socket_id=1,max_nb_sessions=128" + ./l2fwd-crypto -l 6 -n 4 --vdev="crypto_zuc,socket_id=1,max_nb_sessions=128" diff --git a/doc/guides/faq/faq.rst b/doc/guides/faq/faq.rst index 5a324b2..9140df1 100644 --- a/doc/guides/faq/faq.rst +++ b/doc/guides/faq/faq.rst @@ -54,7 +54,7 @@ If you need to change the number of pages, it is easier to first remove the page See the "Quick Start Setup Script" section in the :ref:`DPDK Getting Started Guide ` for more information. -If I execute "l2fwd -c f -m 64 -n 3 -- -p 3", I get the following output, indicating that there are no socket 0 hugepages to allocate the mbuf and ring structures to? +If I execute "l2fwd -l 0-3 -m 64 -n 3 -- -p 3", I get the following output, indicating that there are no socket 0 hugepages to allocate the mbuf and ring structures to? ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- I have set up a total of 1024 Hugepages (that is, allocated 512 2M pages to each NUMA node). @@ -78,7 +78,9 @@ affinitizing the application to a would-be master core. For example, if your EAL coremask is 0xff0, the master core will usually be the first core in the coremask (0x10); this is what you have to supply to taskset:: - taskset 0x10 ./l2fwd -c 0xff0 -n 2 + taskset 0x10 ./l2fwd -l 4-11 -n 2 + +.. Note: Instead of '-c 0xff0' use the '-l 4-11' as a cleaner way to define lcores. In this way, the hugepages have a greater chance of being allocated to the correct socket. Additionally, a ``--socket-mem`` option could be used to ensure the availability of memory for each socket, so that if hugepages were allocated on diff --git a/doc/guides/freebsd_gsg/build_sample_apps.rst b/doc/guides/freebsd_gsg/build_sample_apps.rst index fffc4c0..9faa0e6 100644 --- a/doc/guides/freebsd_gsg/build_sample_apps.rst +++ b/doc/guides/freebsd_gsg/build_sample_apps.rst @@ -119,7 +119,7 @@ The following is the list of options that can be given to the EAL: .. code-block:: console - ./rte-app -c COREMASK [-n NUM] [-b ] \ + ./rte-app -l CORELIST [-n NUM] [-b ] \ [-r NUM] [-v] [--proc-type ] .. note:: @@ -130,9 +130,10 @@ The following is the list of options that can be given to the EAL: The EAL options for FreeBSD are as follows: -* ``-c COREMASK``: +* ``-c COREMASK`` or ``-l CORELIST``: A hexadecimal bit mask of the cores to run on. Note that core numbering - can change between platforms and should be determined beforehand. + can change between platforms and should be determined beforehand. The corelist + is a list of cores to use instead of a core mask. * ``-n NUM``: Number of memory channels per processor socket. @@ -169,13 +170,13 @@ Other options, specific to Linux and are not supported under FreeBSD are as foll Memory to allocate from hugepages, regardless of processor socket. It is recommended that ``--socket-mem`` be used instead of this option. -The ``-c`` option is mandatory; the others are optional. +The ``-c`` or ``-l`` option is mandatory; the others are optional. Copy the DPDK application binary to your target, then run the application as follows (assuming the platform has four memory channels, and that cores 0-3 are present and are to be used for running the application):: - ./helloworld -c f -n 4 + ./helloworld -l 0-3 -n 4 .. note:: diff --git a/doc/guides/freebsd_gsg/install_from_ports.rst b/doc/guides/freebsd_gsg/install_from_ports.rst index 8177029..67e63d2 100644 --- a/doc/guides/freebsd_gsg/install_from_ports.rst +++ b/doc/guides/freebsd_gsg/install_from_ports.rst @@ -111,7 +111,7 @@ compiled and run as below: INSTALL-APP helloworld INSTALL-MAP helloworld.map - sudo ./build/helloworld -c F -n 2 + sudo ./build/helloworld -l 0-3 -n 2 EAL: Contigmem driver has 2 buffers, each of size 1GB EAL: Sysctl reports 8 cpus diff --git a/doc/guides/howto/flow_bifurcation.rst b/doc/guides/howto/flow_bifurcation.rst index 0d7226a..61016a4 100644 --- a/doc/guides/howto/flow_bifurcation.rst +++ b/doc/guides/howto/flow_bifurcation.rst @@ -126,7 +126,7 @@ The typical procedure to achieve this is as follows: .. code-block:: console - testpmd -c 0xff -n 4 -- -i -w 01:10.0 -w 01:10.1 --forward-mode=mac + testpmd -l 0-7 -n 4 -- -i -w 01:10.0 -w 01:10.1 --forward-mode=mac In this example, traffic matching the rules will go through the VF by matching the filter rule. All other traffic, not matching the rules, will go through @@ -286,7 +286,7 @@ The typical procedure to achieve this is as follows: .. code-block:: console - testpmd -c 0xff -n 4 -- -i -w 01:10.0 -w 01:10.1 --forward-mode=mac + testpmd -l 0-7 -n 4 -- -i -w 01:10.0 -w 01:10.1 --forward-mode=mac .. note:: diff --git a/doc/guides/howto/lm_bond_virtio_sriov.rst b/doc/guides/howto/lm_bond_virtio_sriov.rst index 169b64e..40dd2cb 100644 --- a/doc/guides/howto/lm_bond_virtio_sriov.rst +++ b/doc/guides/howto/lm_bond_virtio_sriov.rst @@ -641,7 +641,7 @@ Run testpmd in the Virtual Machine. # use for bonding of virtio and vf tests in VM /root/dpdk/x86_64-default-linuxapp-gcc/app/testpmd \ - -c f -n 4 --socket-mem 350 -- --i --port-topology=chained + -l 0-3 -n 4 --socket-mem 350 -- --i --port-topology=chained .. _lm_bond_virtio_sriov_switch_conf: diff --git a/doc/guides/howto/lm_virtio_vhost_user.rst b/doc/guides/howto/lm_virtio_vhost_user.rst index 0a0fcfc..9402ed8 100644 --- a/doc/guides/howto/lm_virtio_vhost_user.rst +++ b/doc/guides/howto/lm_virtio_vhost_user.rst @@ -466,4 +466,4 @@ run_testpmd_in_vm.sh # test system has 8 cpus (0-7), use cpus 2-7 for VM /root/dpdk/x86_64-default-linuxapp-gcc/app/testpmd \ - -c 3f -n 4 --socket-mem 350 -- --burst=64 --i --disable-hw-vlan-filter + -l 0-5 -n 4 --socket-mem 350 -- --burst=64 --i --disable-hw-vlan-filter diff --git a/doc/guides/howto/virtio_user_as_exceptional_path.rst b/doc/guides/howto/virtio_user_as_exceptional_path.rst index 26a72e2..939ced9 100644 --- a/doc/guides/howto/virtio_user_as_exceptional_path.rst +++ b/doc/guides/howto/virtio_user_as_exceptional_path.rst @@ -82,7 +82,7 @@ compiling the kernel and those kernel modules should be inserted. .. code-block:: console - $(testpmd) -c 0xc -n 4 \ + $(testpmd) -l 2-3 -n 4 \ --vdev=virtio_user0,path=/dev/vhost-net,queue_size=1024 \ -- -i --txqflags=0x0 --disable-hw-vlan --enable-lro --crc-strip --enable-rx-cksum --rxd=1024 --txd=1024 @@ -111,7 +111,7 @@ compiling the kernel and those kernel modules should be inserted. .. code-block:: console - $(testpmd) -c 0xc -n 4 \ + $(testpmd) -l 2-3 -n 4 \ --vdev=virtio_user0,path=/dev/vhost-net,queues=2,queue_size=1024 \ -- -i --txqflags=0x0 --disable-hw-vlan --enable-lro \ --crc-strip --enable-rx-cksum --txq=2 --rxq=2 --rxd=1024 \ diff --git a/doc/guides/howto/virtio_user_for_container_networking.rst b/doc/guides/howto/virtio_user_for_container_networking.rst index 19fe395..dbb9319 100644 --- a/doc/guides/howto/virtio_user_for_container_networking.rst +++ b/doc/guides/howto/virtio_user_for_container_networking.rst @@ -110,7 +110,7 @@ some minor changes. .. code-block:: console - $(testpmd) -c 0x3 -n 4 --socket-mem 1024,1024 \ + $(testpmd) -l 0-1 -n 4 --socket-mem 1024,1024 \ --vdev 'eth_vhost0,iface=/tmp/sock0' --no-pci -- -i #. Start a container instance with a virtio-user port. @@ -119,7 +119,7 @@ some minor changes. docker run -i -t -v /tmp/sock0:/var/run/usvhost \ -v /dev/hugepages:/dev/hugepages \ - dpdk-app-testpmd testpmd -c 0xc -n 4 -m 1024 --no-pci \ + dpdk-app-testpmd testpmd -l 6-7 -n 4 -m 1024 --no-pci \ --vdev=virtio_user0,path=/var/run/usvhost \ -- -i --txqflags=0xf00 --disable-hw-vlan diff --git a/doc/guides/linux_gsg/build_sample_apps.rst b/doc/guides/linux_gsg/build_sample_apps.rst index e53bd51..29739a5 100644 --- a/doc/guides/linux_gsg/build_sample_apps.rst +++ b/doc/guides/linux_gsg/build_sample_apps.rst @@ -112,15 +112,16 @@ The following is the list of options that can be given to the EAL: .. code-block:: console - ./rte-app -c COREMASK [-n NUM] [-b ] \ + ./rte-app [-c COREMASK | -l CORELIST] [-n NUM] [-b ] \ [--socket-mem=MB,...] [-m MB] [-r NUM] [-v] [--file-prefix] \ [--proc-type ] [-- xen-dom0] The EAL options are as follows: -* ``-c COREMASK``: +* ``-c COREMASK`` or ``-l CORELIST``: An hexadecimal bit mask of the cores to run on. Note that core numbering can - change between platforms and should be determined beforehand. + change between platforms and should be determined beforehand. The corelist is + a set of core numbers instead of a bitmap core mask. * ``-n NUM``: Number of memory channels per processor socket. @@ -167,13 +168,13 @@ The EAL options are as follows: * ``--vfio-intr``: Specify interrupt type to be used by VFIO (has no effect if VFIO is not used). -The ``-c`` and option is mandatory; the others are optional. +The ``-c`` or ``-l`` and option is mandatory; the others are optional. Copy the DPDK application binary to your target, then run the application as follows (assuming the platform has four memory channels per processor socket, and that cores 0-3 are present and are to be used for running the application):: - ./helloworld -c f -n 4 + ./helloworld -l 0-3 -n 4 .. note:: @@ -185,10 +186,10 @@ and that cores 0-3 are present and are to be used for running the application):: Logical Core Use by Applications ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The coremask parameter is always mandatory for DPDK applications. -Each bit of the mask corresponds to the equivalent logical core number as reported by Linux. +The coremask (-c 0x0f) or corelist (-l 0-3) parameter is always mandatory for DPDK applications. +Each bit of the mask corresponds to the equivalent logical core number as reported by Linux. The preferred corelist option is a cleaner method to define cores to be used. Since these logical core numbers, and their mapping to specific cores on specific NUMA sockets, can vary from platform to platform, -it is recommended that the core layout for each platform be considered when choosing the coremask to use in each case. +it is recommended that the core layout for each platform be considered when choosing the coremask/corelist to use in each case. On initialization of the EAL layer by an DPDK application, the logical cores to be used and their socket location are displayed. This information can also be determined for all cores on the system by examining the ``/proc/cpuinfo`` file, for example, by running cat ``/proc/cpuinfo``. @@ -205,7 +206,7 @@ This can be useful when using other processors to understand the mapping of the .. warning:: - The logical core layout can change between different board layouts and should be checked before selecting an application coremask. + The logical core layout can change between different board layouts and should be checked before selecting an application coremask/corelist. Hugepage Memory Use by Applications ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/doc/guides/linux_gsg/nic_perf_intel_platform.rst b/doc/guides/linux_gsg/nic_perf_intel_platform.rst index 8f34faf..709113d 100644 --- a/doc/guides/linux_gsg/nic_perf_intel_platform.rst +++ b/doc/guides/linux_gsg/nic_perf_intel_platform.rst @@ -246,7 +246,7 @@ See :numref:`figure_intel_perf_test_setup` for the performance test setup. 7. The command line of running l3fwd would be something like the followings:: - ./l3fwd -c 0x3c0000 -n 4 -w 82:00.0 -w 85:00.0 \ + ./l3fwd -l 18-21 -n 4 -w 82:00.0 -w 85:00.0 \ -- -p 0x3 --config '(0,0,18),(0,1,19),(1,0,20),(1,1,21)' This means that the application uses core 18 for port 0, queue pair 0 forwarding, core 19 for port 0, queue pair 1 forwarding, diff --git a/doc/guides/linux_gsg/quick_start.rst b/doc/guides/linux_gsg/quick_start.rst index b158d0f..39675db 100644 --- a/doc/guides/linux_gsg/quick_start.rst +++ b/doc/guides/linux_gsg/quick_start.rst @@ -282,7 +282,7 @@ the logical core layout of the platform should be determined when selecting a co INSTALL-APP helloworld INSTALL-MAP helloworld.map - sudo ./build/app/helloworld -c 0xf -n 3 + sudo ./build/app/helloworld -l 0-3 -n 3 [sudo] password for rte: EAL: coremask set to f diff --git a/doc/guides/nics/bnx2x.rst b/doc/guides/nics/bnx2x.rst index c011df1..17780ed 100644 --- a/doc/guides/nics/bnx2x.rst +++ b/doc/guides/nics/bnx2x.rst @@ -225,7 +225,7 @@ devices managed by ``librte_pmd_bnx2x`` in Linux operating system. .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -- -i + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -- -i Example output: diff --git a/doc/guides/nics/cxgbe.rst b/doc/guides/nics/cxgbe.rst index 7aa6953..308a926 100644 --- a/doc/guides/nics/cxgbe.rst +++ b/doc/guides/nics/cxgbe.rst @@ -307,7 +307,7 @@ devices managed by librte_pmd_cxgbe in Linux operating system. .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0000:02:00.4 -- -i + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -w 0000:02:00.4 -- -i Example output: @@ -509,7 +509,7 @@ devices managed by librte_pmd_cxgbe in FreeBSD operating system. .. code-block:: console - ./x86_64-native-bsdapp-clang/app/testpmd -c 0xf -n 4 -w 0000:02:00.4 -- -i + ./x86_64-native-bsdapp-clang/app/testpmd -l 0-3 -n 4 -w 0000:02:00.4 -- -i Example output: diff --git a/doc/guides/nics/ena.rst b/doc/guides/nics/ena.rst index c2738e8..c2d6b85 100644 --- a/doc/guides/nics/ena.rst +++ b/doc/guides/nics/ena.rst @@ -231,7 +231,7 @@ devices managed by librte_pmd_ena. .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -- -i + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -- -i Example output: diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst index b890613..043de34 100644 --- a/doc/guides/nics/i40e.rst +++ b/doc/guides/nics/i40e.rst @@ -177,7 +177,7 @@ devices managed by ``librte_pmd_i40e`` in the Linux operating system. .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 83:00.0 -- -i + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -w 83:00.0 -- -i Example output: @@ -268,7 +268,7 @@ To start ``testpmd``, and add vlan 10 to port 0: .. code-block:: console - ./app/testpmd -c ffff -n 4 -- -i --forward-mode=mac + ./app/testpmd -l 0-15 -n 4 -- -i --forward-mode=mac ... testpmd> set promisc 0 off @@ -303,7 +303,7 @@ Start ``testpmd`` with ``--disable-rss`` and ``--pkt-filter-mode=perfect``: .. code-block:: console - ./app/testpmd -c ffff -n 4 -- -i --disable-rss --pkt-filter-mode=perfect \ + ./app/testpmd -l 0-15 -n 4 -- -i --disable-rss --pkt-filter-mode=perfect \ --rxq=8 --txq=8 --nb-cores=8 --nb-ports=1 Add a rule to direct ``ipv4-udp`` packet whose ``dst_ip=2.2.2.5, src_ip=2.2.2.3, src_port=32, dst_port=32`` to queue 1: diff --git a/doc/guides/nics/intel_vf.rst b/doc/guides/nics/intel_vf.rst index 9fe4209..91cbae6 100644 --- a/doc/guides/nics/intel_vf.rst +++ b/doc/guides/nics/intel_vf.rst @@ -187,7 +187,10 @@ For example, .. code-block:: console - testpmd -c 0xffff -n 4 -- --coremask= --rxq=4 --txq=4 -i + testpmd -l 0-15 -n 4 -- --coremask= --rxq=4 --txq=4 -i + +.. Note: The preferred option is -c XX or -l n-n,n instead of a coremask value. The --coremask option + is a feature of the application and not DPDK EAL options. The limitation for VF RSS on IntelĀ® 82599 10 Gigabit Ethernet Controller is: The hash and key are shared among PF and all VF, the RETA table with 128 entries is also shared @@ -513,7 +516,7 @@ The setup procedure is as follows: .. code-block:: console make install T=x86_64-native-linuxapp-gcc - ./x86_64-native-linuxapp-gcc/app/testpmd -c f -n 4 -- -i + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -- -i #. Finally, access the Guest OS using vncviewer with the localhost:5900 port and check the lspci command output in the Guest OS. The virtual functions will be listed as available for use. diff --git a/doc/guides/nics/ixgbe.rst b/doc/guides/nics/ixgbe.rst index aceeb13..1a4aa48 100644 --- a/doc/guides/nics/ixgbe.rst +++ b/doc/guides/nics/ixgbe.rst @@ -163,13 +163,13 @@ By default, using CONFIG_RTE_IXGBE_RX_OLFLAGS_ENABLE=y: .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c 300 -n 4 -- -i --burst=32 --rxfreet=32 --mbcache=250 --txpt=32 --rxht=8 --rxwt=0 --txfreet=32 --txrst=32 --txqflags=0xf01 + ./x86_64-native-linuxapp-gcc/app/testpmd -l 8-9 -n 4 -- -i --burst=32 --rxfreet=32 --mbcache=250 --txpt=32 --rxht=8 --rxwt=0 --txfreet=32 --txrst=32 --txqflags=0xf01 When CONFIG_RTE_IXGBE_RX_OLFLAGS_ENABLE=n, better performance can be achieved: .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c 300 -n 4 -- -i --burst=32 --rxfreet=32 --mbcache=250 --txpt=32 --rxht=8 --rxwt=0 --txfreet=32 --txrst=32 --txqflags=0xf01 --disable-hw-vlan + ./x86_64-native-linuxapp-gcc/app/testpmd -l 8-9 -n 4 -- -i --burst=32 --rxfreet=32 --mbcache=250 --txpt=32 --rxht=8 --rxwt=0 --txfreet=32 --txrst=32 --txqflags=0xf01 --disable-hw-vlan l3fwd ~~~~~ diff --git a/doc/guides/nics/mlx4.rst b/doc/guides/nics/mlx4.rst index 9a2e973..3762c60 100644 --- a/doc/guides/nics/mlx4.rst +++ b/doc/guides/nics/mlx4.rst @@ -343,7 +343,7 @@ devices managed by librte_pmd_mlx4. .. code-block:: console - testpmd -c 0xff00 -n 4 -w 0000:83:00.0 -w 0000:84:00.0 -- --rxq=2 --txq=2 -i + testpmd -l 8-15 -n 4 -w 0000:83:00.0 -w 0000:84:00.0 -- --rxq=2 --txq=2 -i Example output: diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index 09922a0..5f6e594 100644 --- a/doc/guides/nics/mlx5.rst +++ b/doc/guides/nics/mlx5.rst @@ -382,7 +382,7 @@ ConnectX-4/ConnectX-5 devices managed by librte_pmd_mlx5. .. code-block:: console - testpmd -c 0xff00 -n 4 -w 05:00.0 -w 05:00.1 -w 06:00.0 -w 06:00.1 -- --rxq=2 --txq=2 -i + testpmd -l 8-15 -n 4 -w 05:00.0 -w 05:00.1 -w 06:00.0 -w 06:00.1 -- --rxq=2 --txq=2 -i Example output: diff --git a/doc/guides/nics/pcap_ring.rst b/doc/guides/nics/pcap_ring.rst index 79c9525..5e4f5f6 100644 --- a/doc/guides/nics/pcap_ring.rst +++ b/doc/guides/nics/pcap_ring.rst @@ -69,7 +69,7 @@ Device name and stream options must be separated by commas as shown below: .. code-block:: console - $RTE_TARGET/app/testpmd -c f -n 4 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 4 \ --vdev 'net_pcap0,stream_opt0=..,stream_opt1=..' \ --vdev='net_pcap1,stream_opt0=..' @@ -122,7 +122,7 @@ Read packets from one pcap file and write them to another: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 4 \ --vdev 'net_pcap0,rx_pcap=file_rx.pcap,tx_pcap=file_tx.pcap' \ -- --port-topology=chained @@ -130,7 +130,7 @@ Read packets from a network interface and write them to a pcap file: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 4 \ --vdev 'net_pcap0,rx_iface=eth0,tx_pcap=file_tx.pcap' \ -- --port-topology=chained @@ -138,7 +138,7 @@ Read packets from a pcap file and write them to a network interface: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 4 \ --vdev 'net_pcap0,rx_pcap=file_rx.pcap,tx_iface=eth1' \ -- --port-topology=chained @@ -146,7 +146,7 @@ Forward packets through two network interfaces: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 4 \ --vdev 'net_pcap0,iface=eth0' --vdev='net_pcap1;iface=eth1' Using libpcap-based PMD with the testpmd Application @@ -171,7 +171,7 @@ Otherwise, the first 512 packets from the input pcap file will be discarded by t .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 4 \ --vdev 'net_pcap0,rx_pcap=file_rx.pcap,tx_pcap=file_tx.pcap' \ -- --port-topology=chained --no-flush-rx @@ -185,7 +185,7 @@ Multiple devices may be specified, separated by commas. .. code-block:: console - ./testpmd -c E -n 4 --vdev=net_ring0 --vdev=net_ring1 -- -i + ./testpmd -l 1-3 -n 4 --vdev=net_ring0 --vdev=net_ring1 -- -i EAL: Detected lcore 1 as core 1 on socket 0 ... diff --git a/doc/guides/nics/qede.rst b/doc/guides/nics/qede.rst index 1cf5501..4694ec0 100644 --- a/doc/guides/nics/qede.rst +++ b/doc/guides/nics/qede.rst @@ -184,7 +184,7 @@ devices managed by ``librte_pmd_qede`` in Linux operating system. .. code-block:: console - testpmd -c 0xff1 -n 4 -- -i --nb-cores=8 --portmask=0xf --rxd=4096 \ + testpmd -l 0,4-11 -n 4 -- -i --nb-cores=8 --portmask=0xf --rxd=4096 \ --txd=4096 --txfreet=4068 --enable-rx-cksum --rxq=4 --txq=4 \ --rss-ip --rss-udp diff --git a/doc/guides/nics/szedata2.rst b/doc/guides/nics/szedata2.rst index 741b400..cb1ec31 100644 --- a/doc/guides/nics/szedata2.rst +++ b/doc/guides/nics/szedata2.rst @@ -117,7 +117,7 @@ transmit channel: .. code-block:: console - $RTE_TARGET/app/testpmd -c 0xf -n 2 \ + $RTE_TARGET/app/testpmd -l 0-3 -n 2 \ -- --port-topology=chained --rxq=2 --txq=2 --nb-cores=2 -i -a Example output: diff --git a/doc/guides/nics/thunderx.rst b/doc/guides/nics/thunderx.rst index e6ac441..1314ee9 100644 --- a/doc/guides/nics/thunderx.rst +++ b/doc/guides/nics/thunderx.rst @@ -155,7 +155,7 @@ managed by ``librte_pmd_thunderx_nicvf`` in the Linux operating system. .. code-block:: console - ./arm64-thunderx-linuxapp-gcc/app/testpmd -c 0xf -n 4 -w 0002:01:00.2 \ + ./arm64-thunderx-linuxapp-gcc/app/testpmd -l 0-3 -n 4 -w 0002:01:00.2 \ -- -i --disable-hw-vlan-filter --crc-strip --no-flush-rx \ --port-topology=loop diff --git a/doc/guides/nics/vhost.rst b/doc/guides/nics/vhost.rst index 6b30b54..e651a16 100644 --- a/doc/guides/nics/vhost.rst +++ b/doc/guides/nics/vhost.rst @@ -92,7 +92,7 @@ This section demonstrates vhost PMD with testpmd DPDK sample application. .. code-block:: console - ./testpmd -c f -n 4 --vdev 'net_vhost0,iface=/tmp/sock0,queues=1' -- -i + ./testpmd -l 0-3 -n 4 --vdev 'net_vhost0,iface=/tmp/sock0,queues=1' -- -i Other basic DPDK preparations like hugepage enabling here. Please refer to the *DPDK Getting Started Guide* for detailed instructions. diff --git a/doc/guides/nics/virtio.rst b/doc/guides/nics/virtio.rst index dcf4d35..e1a80dc 100644 --- a/doc/guides/nics/virtio.rst +++ b/doc/guides/nics/virtio.rst @@ -130,7 +130,7 @@ Host2VM communication example .. code-block:: console - examples/kni/build/app/kni -c 0xf -n 4 -- -p 0x1 -P --config="(0,1,3)" + examples/kni/build/app/kni -l 0-3 -n 4 -- -p 0x1 -P --config="(0,1,3)" This command generates one network device vEth0 for physical port. If specify more physical ports, the generated network device will be vEth1, vEth2, and so on. @@ -275,7 +275,7 @@ The corresponding callbacks are: Example of using the vector version of the virtio poll mode driver in ``testpmd``:: - testpmd -c 0x7 -n 4 -- -i --txqflags=0xF01 --rxq=1 --txq=1 --nb-cores=1 + testpmd -l 0-2 -n 4 -- -i --txqflags=0xF01 --rxq=1 --txq=1 --nb-cores=1 Interrupt mode @@ -332,5 +332,5 @@ Here we use l3fwd-power as an example to show how to get started. .. code-block:: console - $ l3fwd-power -c 0x3 -- -p 1 -P --config="(0,0,1)" \ + $ l3fwd-power -l 0-1 -- -p 1 -P --config="(0,0,1)" \ --no-numa --parse-ptype diff --git a/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst b/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst index 65813c9..73fefce 100644 --- a/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst +++ b/doc/guides/prog_guide/link_bonding_poll_mode_drv_lib.rst @@ -365,7 +365,7 @@ Device names and bonding options must be separated by commas as shown below: .. code-block:: console - $RTE_TARGET/app/testpmd -c f -n 4 --vdev 'net_bond0,bond_opt0=..,bond opt1=..'--vdev 'net_bond1,bond _opt0=..,bond_opt1=..' + $RTE_TARGET/app/testpmd -l 0-3 -n 4 --vdev 'net_bond0,bond_opt0=..,bond opt1=..'--vdev 'net_bond1,bond _opt0=..,bond_opt1=..' Link Bonding EAL Options ^^^^^^^^^^^^^^^^^^^^^^^^ @@ -465,22 +465,22 @@ Create a bonded device in round robin mode with two slaves specified by their PC .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 --vdev 'net_bond0,mode=0, slave=0000:00a:00.01,slave=0000:004:00.00' -- --port-topology=chained + $RTE_TARGET/app/testpmd -l 0-3 -n 4 --vdev 'net_bond0,mode=0, slave=0000:00a:00.01,slave=0000:004:00.00' -- --port-topology=chained Create a bonded device in round robin mode with two slaves specified by their PCI address and an overriding MAC address: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 --vdev 'net_bond0,mode=0, slave=0000:00a:00.01,slave=0000:004:00.00,mac=00:1e:67:1d:fd:1d' -- --port-topology=chained + $RTE_TARGET/app/testpmd -l 0-3 -n 4 --vdev 'net_bond0,mode=0, slave=0000:00a:00.01,slave=0000:004:00.00,mac=00:1e:67:1d:fd:1d' -- --port-topology=chained Create a bonded device in active backup mode with two slaves specified, and a primary slave specified by their PCI addresses: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 --vdev 'net_bond0,mode=1, slave=0000:00a:00.01,slave=0000:004:00.00,primary=0000:00a:00.01' -- --port-topology=chained + $RTE_TARGET/app/testpmd -l 0-3 -n 4 --vdev 'net_bond0,mode=1, slave=0000:00a:00.01,slave=0000:004:00.00,primary=0000:00a:00.01' -- --port-topology=chained Create a bonded device in balance mode with two slaves specified by their PCI addresses, and a transmission policy of layer 3 + 4 forwarding: .. code-block:: console - $RTE_TARGET/app/testpmd -c '0xf' -n 4 --vdev 'net_bond0,mode=2, slave=0000:00a:00.01,slave=0000:004:00.00,xmit_policy=l34' -- --port-topology=chained + $RTE_TARGET/app/testpmd -l 0-3 -n 4 --vdev 'net_bond0,mode=2, slave=0000:00a:00.01,slave=0000:004:00.00,xmit_policy=l34' -- --port-topology=chained diff --git a/doc/guides/prog_guide/multi_proc_support.rst b/doc/guides/prog_guide/multi_proc_support.rst index 2a996ae..9a9dca7 100644 --- a/doc/guides/prog_guide/multi_proc_support.rst +++ b/doc/guides/prog_guide/multi_proc_support.rst @@ -173,7 +173,7 @@ Some of these are documented below: so it is recommended that it be disabled only when absolutely necessary, and only when the implications of this change have been understood. -* All DPDK processes running as a single application and using shared memory must have distinct coremask arguments. +* All DPDK processes running as a single application and using shared memory must have distinct coremask/corelist arguments. It is not possible to have a primary and secondary instance, or two secondary instances, using any of the same logical cores. Attempting to do so can cause corruption of memory pool caches, among other issues. diff --git a/doc/guides/sample_app_ug/cmd_line.rst b/doc/guides/sample_app_ug/cmd_line.rst index 02a295f..36c7971 100644 --- a/doc/guides/sample_app_ug/cmd_line.rst +++ b/doc/guides/sample_app_ug/cmd_line.rst @@ -96,7 +96,7 @@ To run the application in linuxapp environment, issue the following command: .. code-block:: console - $ ./build/cmdline -c f -n 4 + $ ./build/cmdline -l 0-3 -n 4 Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/dist_app.rst b/doc/guides/sample_app_ug/dist_app.rst index e242748..ec07b84 100644 --- a/doc/guides/sample_app_ug/dist_app.rst +++ b/doc/guides/sample_app_ug/dist_app.rst @@ -96,7 +96,7 @@ Running the Application .. code-block:: console - $ ./build/distributor_app -c 0x4003fe -n 4 -- -p f + $ ./build/distributor_app -l 1-9,22 -n 4 -- -p f #. Refer to the DPDK Getting Started Guide for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/exception_path.rst b/doc/guides/sample_app_ug/exception_path.rst index 161b6e0..e505fb3 100644 --- a/doc/guides/sample_app_ug/exception_path.rst +++ b/doc/guides/sample_app_ug/exception_path.rst @@ -102,7 +102,7 @@ Refer to the *DPDK Getting Started Guide* for general information on running app and the Environment Abstraction Layer (EAL) options. The number of bits set in each bitmask must be the same. -The coremask -c parameter of the EAL options should include IN_CORES and OUT_CORES. +The coremask -c or the corelist -l parameter of the EAL options should include IN_CORES and OUT_CORES. The same bit must not be set in IN_CORES and OUT_CORES. The affinities between ports and cores are set beginning with the least significant bit of each mask, that is, the port represented by the lowest bit in PORTMASK is read from by the core represented by the lowest bit in IN_CORES, @@ -112,7 +112,7 @@ For example to run the application with two ports and four cores: .. code-block:: console - ./build/exception_path -c f -n 4 -- -p 3 -i 3 -o c + ./build/exception_path -l 0-3 -n 4 -- -p 3 -i 3 -o c Getting Statistics ~~~~~~~~~~~~~~~~~~ diff --git a/doc/guides/sample_app_ug/hello_world.rst b/doc/guides/sample_app_ug/hello_world.rst index 72e1e11..f4753af 100644 --- a/doc/guides/sample_app_ug/hello_world.rst +++ b/doc/guides/sample_app_ug/hello_world.rst @@ -65,7 +65,7 @@ To run the example in a linuxapp environment: .. code-block:: console - $ ./build/helloworld -c f -n 4 + $ ./build/helloworld -l 0-3 -n 4 Refer to *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/intel_quickassist.rst b/doc/guides/sample_app_ug/intel_quickassist.rst index 04d1593..ca88b62 100644 --- a/doc/guides/sample_app_ug/intel_quickassist.rst +++ b/doc/guides/sample_app_ug/intel_quickassist.rst @@ -215,7 +215,7 @@ performing AES-CBC-128 encryption with AES-XCBC-MAC-96 hash, the following setti .. code-block:: console - ./build/dpdk_qat -c 0xff -n 2 -- -p 0x3 --config '(0,0,1),(1,0,2)' + ./build/dpdk_qat -l 0-7 -n 2 -- -p 0x3 --config '(0,0,1),(1,0,2)' Refer to the *DPDK Test Report* for more examples of traffic generator setup and the application startup command lines. If no errors are generated in response to the startup commands, the application is running correctly. diff --git a/doc/guides/sample_app_ug/ip_frag.rst b/doc/guides/sample_app_ug/ip_frag.rst index 0c8da19..bd1fe2d 100644 --- a/doc/guides/sample_app_ug/ip_frag.rst +++ b/doc/guides/sample_app_ug/ip_frag.rst @@ -111,7 +111,7 @@ To run the example in linuxapp environment with 2 lcores (2,4) over 2 ports(0,2) .. code-block:: console - ./build/ip_fragmentation -c 0x14 -n 3 -- -p 5 + ./build/ip_fragmentation -l 2,4 -n 3 -- -p 5 EAL: coremask set to 14 EAL: Detected lcore 0 on socket 0 EAL: Detected lcore 1 on socket 1 @@ -140,7 +140,7 @@ To run the example in linuxapp environment with 1 lcore (4) over 2 ports(0,2) wi .. code-block:: console - ./build/ip_fragmentation -c 0x10 -n 3 -- -p 5 -q 2 + ./build/ip_fragmentation -l 4 -n 3 -- -p 5 -q 2 To test the application, flows should be set up in the flow generator that match the values in the l3fwd_ipv4_route_array and/or l3fwd_ipv6_route_array table. diff --git a/doc/guides/sample_app_ug/ip_reassembly.rst b/doc/guides/sample_app_ug/ip_reassembly.rst index 3c5cc70..cc9e591 100644 --- a/doc/guides/sample_app_ug/ip_reassembly.rst +++ b/doc/guides/sample_app_ug/ip_reassembly.rst @@ -102,7 +102,7 @@ To run the example in linuxapp environment with 2 lcores (2,4) over 2 ports(0,2) .. code-block:: console - ./build/ip_reassembly -c 0x14 -n 3 -- -p 5 + ./build/ip_reassembly -l 2,4 -n 3 -- -p 5 EAL: coremask set to 14 EAL: Detected lcore 0 on socket 0 EAL: Detected lcore 1 on socket 1 @@ -133,7 +133,7 @@ To run the example in linuxapp environment with 1 lcore (4) over 2 ports(0,2) wi .. code-block:: console - ./build/ip_reassembly -c 0x10 -n 3 -- -p 5 -q 2 + ./build/ip_reassembly -l 4 -n 3 -- -p 5 -q 2 To test the application, flows should be set up in the flow generator that match the values in the l3fwd_ipv4_route_array and/or l3fwd_ipv6_route_array table. diff --git a/doc/guides/sample_app_ug/ipv4_multicast.rst b/doc/guides/sample_app_ug/ipv4_multicast.rst index 72da8c4..2f65eed 100644 --- a/doc/guides/sample_app_ug/ipv4_multicast.rst +++ b/doc/guides/sample_app_ug/ipv4_multicast.rst @@ -113,7 +113,7 @@ Typically, to run the IPv4 Multicast sample application, issue the following com .. code-block:: console - ./build/ipv4_multicast -c 0x00f -n 3 -- -p 0x3 -q 1 + ./build/ipv4_multicast -l 0-3 -n 3 -- -p 0x3 -q 1 In this command: diff --git a/doc/guides/sample_app_ug/keep_alive.rst b/doc/guides/sample_app_ug/keep_alive.rst index 3897377..fe90820 100644 --- a/doc/guides/sample_app_ug/keep_alive.rst +++ b/doc/guides/sample_app_ug/keep_alive.rst @@ -114,7 +114,7 @@ To run the application in linuxapp environment with 4 lcores, 16 ports .. code-block:: console - ./build/l2fwd-keepalive -c f -n 4 -- -q 8 -p ffff -K 10 + ./build/l2fwd-keepalive -l 0-3 -n 4 -- -q 8 -p ffff -K 10 Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) diff --git a/doc/guides/sample_app_ug/kernel_nic_interface.rst b/doc/guides/sample_app_ug/kernel_nic_interface.rst index 2ae9b70..619a7b5 100644 --- a/doc/guides/sample_app_ug/kernel_nic_interface.rst +++ b/doc/guides/sample_app_ug/kernel_nic_interface.rst @@ -180,7 +180,7 @@ Where: Refer to *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. -The -c coremask parameter of the EAL options should include the lcores indicated by the lcore_rx and lcore_tx, +The -c coremask or -l corelist parameter of the EAL options should include the lcores indicated by the lcore_rx and lcore_tx, but does not need to include lcores indicated by lcore_kthread as they are used to pin the kernel thread on. The -p PORTMASK parameter should include the ports indicated by the port in --config, neither more nor less. @@ -199,7 +199,7 @@ and one lcore of kernel thread for each port: .. code-block:: console - ./build/kni -c 0xf0 -n 4 -- -P -p 0x3 -config="(0,4,6,8),(1,5,7,9)" + ./build/kni -l 4-7 -n 4 -- -P -p 0x3 -config="(0,4,6,8),(1,5,7,9)" KNI Operations -------------- diff --git a/doc/guides/sample_app_ug/l2_forward_cat.rst b/doc/guides/sample_app_ug/l2_forward_cat.rst index 285c3c7..b0c2e10 100644 --- a/doc/guides/sample_app_ug/l2_forward_cat.rst +++ b/doc/guides/sample_app_ug/l2_forward_cat.rst @@ -108,13 +108,13 @@ To run the example in a ``linuxapp`` environment and enable CAT on cpus 0-2: .. code-block:: console - ./build/l2fwd-cat -c 2 -n 4 -- --l3ca="0x3@(0-2)" + ./build/l2fwd-cat -l 1 -n 4 -- --l3ca="0x3@(0-2)" or to enable CAT and CDP on cpus 1,3: .. code-block:: console - ./build/l2fwd-cat -c 2 -n 4 -- --l3ca="(0x00C00,0x00300)@(1,3)" + ./build/l2fwd-cat -l 1 -n 4 -- --l3ca="(0x00C00,0x00300)@(1,3)" If CDP is not supported it will fail with following error message: @@ -242,4 +242,4 @@ relevant CPUs via ``pqos_l3ca_assoc_set(...)`` calls. ``atexit(...)`` is used to register ``cat_exit(...)`` to be called on a clean exit. ``cat_exit(...)`` performs a simple CAT clean-up, by associating -COS 0 to all involved CPUs via ``pqos_l3ca_assoc_set(...)`` calls. \ No newline at end of file +COS 0 to all involved CPUs via ``pqos_l3ca_assoc_set(...)`` calls. diff --git a/doc/guides/sample_app_ug/l2_forward_crypto.rst b/doc/guides/sample_app_ug/l2_forward_crypto.rst index 723376c..5b600be 100644 --- a/doc/guides/sample_app_ug/l2_forward_crypto.rst +++ b/doc/guides/sample_app_ug/l2_forward_crypto.rst @@ -167,7 +167,7 @@ To run the application in linuxapp environment with 2 lcores, 2 ports and 2 cryp .. code-block:: console - $ ./build/l2fwd-crypto -c 0x3 -n 4 --vdev "cryptodev_aesni_mb_pmd" \ + $ ./build/l2fwd-crypto -l 0-1 -n 4 --vdev "cryptodev_aesni_mb_pmd" \ --vdev "cryptodev_aesni_mb_pmd" -- -p 0x3 --chain CIPHER_HASH \ --cipher_op ENCRYPT --cipher_algo AES_CBC \ --cipher_key 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f \ diff --git a/doc/guides/sample_app_ug/l2_forward_job_stats.rst b/doc/guides/sample_app_ug/l2_forward_job_stats.rst index 2444e36..456e85e 100644 --- a/doc/guides/sample_app_ug/l2_forward_job_stats.rst +++ b/doc/guides/sample_app_ug/l2_forward_job_stats.rst @@ -140,7 +140,7 @@ thousands separator printing, issue the command: .. code-block:: console - $ ./build/l2fwd-jobstats -c f -n 4 -- -q 8 -p ffff -l + $ ./build/l2fwd-jobstats -l 0-3 -n 4 -- -q 8 -p ffff -l Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/l2_forward_real_virtual.rst b/doc/guides/sample_app_ug/l2_forward_real_virtual.rst index cf15d1c..b86bb7c 100644 --- a/doc/guides/sample_app_ug/l2_forward_real_virtual.rst +++ b/doc/guides/sample_app_ug/l2_forward_real_virtual.rst @@ -150,7 +150,7 @@ updating enabled, issue the command: .. code-block:: console - $ ./build/l2fwd -c f -n 4 -- -q 8 -p ffff + $ ./build/l2fwd -l 0-3 -n 4 -- -q 8 -p ffff Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/l3_forward_access_ctrl.rst b/doc/guides/sample_app_ug/l3_forward_access_ctrl.rst index 3574a25..a6aa4fb 100644 --- a/doc/guides/sample_app_ug/l3_forward_access_ctrl.rst +++ b/doc/guides/sample_app_ug/l3_forward_access_ctrl.rst @@ -318,7 +318,7 @@ To enable L3 forwarding between two ports, assuming that both ports are in the s In this command: -* The -c option enables cores 1, 2 +* The -l option enables cores 1, 2 * The -p option enables ports 0 and 1 diff --git a/doc/guides/sample_app_ug/link_status_intr.rst b/doc/guides/sample_app_ug/link_status_intr.rst index 779df97..5234bc0 100644 --- a/doc/guides/sample_app_ug/link_status_intr.rst +++ b/doc/guides/sample_app_ug/link_status_intr.rst @@ -104,7 +104,7 @@ issue the command: .. code-block:: console - $ ./build/link_status_interrupt -c f -n 4-- -q 8 -p ffff + $ ./build/link_status_interrupt -l 0-3 -n 4-- -q 8 -p ffff Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/load_balancer.rst b/doc/guides/sample_app_ug/load_balancer.rst index fdd8cbd..e101a5f 100644 --- a/doc/guides/sample_app_ug/load_balancer.rst +++ b/doc/guides/sample_app_ug/load_balancer.rst @@ -178,7 +178,7 @@ Example: .. code-block:: console - ./load_balancer -c 0xf8 -n 4 -- --rx "(0,0,3),(1,0,3)" --tx "(0,3),(1,3)" --w "4,5,6,7" --lpm "1.0.0.0/24=>0; 1.0.1.0/24=>1;" --pos-lb 29 + ./load_balancer -l 3-7 -n 4 -- --rx "(0,0,3),(1,0,3)" --tx "(0,3),(1,3)" --w "4,5,6,7" --lpm "1.0.0.0/24=>0; 1.0.1.0/24=>1;" --pos-lb 29 There is a single I/O lcore (lcore 3) that handles RX and TX for two NIC ports (ports 0 and 1) that handles packets to/from four worker lcores (lcores 4, 5, 6 and 7) that diff --git a/doc/guides/sample_app_ug/multi_process.rst b/doc/guides/sample_app_ug/multi_process.rst index 3571490..c0d4417 100644 --- a/doc/guides/sample_app_ug/multi_process.rst +++ b/doc/guides/sample_app_ug/multi_process.rst @@ -82,11 +82,11 @@ Running the Application ^^^^^^^^^^^^^^^^^^^^^^^ To run the application, start one copy of the simple_mp binary in one terminal, -passing at least two cores in the coremask, as follows: +passing at least two cores in the coremask/corelist, as follows: .. code-block:: console - ./build/simple_mp -c 3 -n 4 --proc-type=primary + ./build/simple_mp -l 0-1 -n 4 --proc-type=primary For the first DPDK process run, the proc-type flag can be omitted or set to auto, since all DPDK processes will default to being a primary instance, @@ -95,7 +95,7 @@ The process should start successfully and display a command prompt as follows: .. code-block:: console - $ ./build/simple_mp -c 3 -n 4 --proc-type=primary + $ ./build/simple_mp -l 0-1 -n 4 --proc-type=primary EAL: coremask set to 3 EAL: Detected lcore 0 on socket 0 EAL: Detected lcore 1 on socket 0 @@ -119,11 +119,11 @@ The process should start successfully and display a command prompt as follows: simple_mp > To run the secondary process to communicate with the primary process, -again run the same binary setting at least two cores in the coremask: +again run the same binary setting at least two cores in the coremask/corelist: .. code-block:: console - ./build/simple_mp -c C -n 4 --proc-type=secondary + ./build/simple_mp -l 2-3 -n 4 --proc-type=secondary When running a secondary process such as that shown above, the proc-type parameter can again be specified as auto. However, omitting the parameter altogether will cause the process to try and start as a primary rather than secondary process. @@ -229,10 +229,10 @@ the following commands can be used (assuming run as root): .. code-block:: console - # ./build/symmetric_mp -c 2 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=0 - # ./build/symmetric_mp -c 4 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=1 - # ./build/symmetric_mp -c 8 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=2 - # ./build/symmetric_mp -c 10 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=3 + # ./build/symmetric_mp -l 1 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=0 + # ./build/symmetric_mp -l 2 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=1 + # ./build/symmetric_mp -l 3 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=2 + # ./build/symmetric_mp -l 4 -n 4 --proc-type=auto -- -p 3 --num-procs=4 --proc-id=3 .. note:: @@ -318,8 +318,8 @@ In addition to the EAL parameters, the application- specific parameters are: .. note:: - In the server process, a single thread, the master thread, that is, the lowest numbered lcore in the coremask, performs all packet I/O. - If a coremask is specified with more than a single lcore bit set in it, + In the server process, a single thread, the master thread, that is, the lowest numbered lcore in the coremask/corelist, performs all packet I/O. + If a coremask/corelist is specified with more than a single lcore bit set in it, an additional lcore will be used for a thread to periodically print packet count statistics. Since the server application stores configuration data in shared memory, including the network ports to be used, @@ -329,9 +329,9 @@ the following commands could be used: .. code-block:: console - # ./mp_server/build/mp_server -c 6 -n 4 -- -p 3 -n 2 - # ./mp_client/build/mp_client -c 8 -n 4 --proc-type=auto -- -n 0 - # ./mp_client/build/mp_client -c 10 -n 4 --proc-type=auto -- -n 1 + # ./mp_server/build/mp_server -l 1-2 -n 4 -- -p 3 -n 2 + # ./mp_client/build/mp_client -l 3 -n 4 --proc-type=auto -- -n 0 + # ./mp_client/build/mp_client -l 4 -n 4 --proc-type=auto -- -n 1 .. note:: @@ -524,7 +524,7 @@ The command is as follows: .. code-block:: console - #./build/l2fwd_fork -c 1c -n 4 -- -p 3 -f + #./build/l2fwd_fork -l 2-4 -n 4 -- -p 3 -f This example provides another -f option to specify the use of floating process. If not specified, the example will use a pinned process to perform the L2 forwarding task. diff --git a/doc/guides/sample_app_ug/performance_thread.rst b/doc/guides/sample_app_ug/performance_thread.rst index 51ef015..a55a624 100644 --- a/doc/guides/sample_app_ug/performance_thread.rst +++ b/doc/guides/sample_app_ug/performance_thread.rst @@ -187,14 +187,14 @@ in ``--rx/--tx`` are used to affinitize threads to the selected scheduler. For example, the following places every l-thread on different lcores:: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,1,1)" \ --tx="(2,0)(3,1)" The following places RX l-threads on lcore 0 and TX l-threads on lcore 1 and 2 and so on:: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,0,1)" \ --tx="(1,0)(2,1)" @@ -210,7 +210,7 @@ place every RX and TX thread on different lcores. For example, the following places every EAL thread on different lcores:: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,1,1)" \ --tx="(2,0)(3,1)" \ --no-lthreads @@ -222,7 +222,7 @@ parameter is used. The following places RX EAL threads on lcore 0 and TX EAL threads on lcore 1 and 2 and so on:: - l3fwd-thread -c ff -n 2 --lcores="(0,1)@0,(2,3)@1" -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 --lcores="(0,1)@0,(2,3)@1" -- -P -p 3 \ --rx="(0,0,0,0)(1,0,1,1)" \ --tx="(2,0)(3,1)" \ --no-lthreads @@ -236,13 +236,13 @@ and its corresponding EAL threads command line can be realized as follows: a) Start every thread on different scheduler (1:1):: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,1,1)" \ --tx="(2,0)(3,1)" EAL thread equivalent:: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,1,1)" \ --tx="(2,0)(3,1)" \ --no-lthreads @@ -251,13 +251,13 @@ b) Start all threads on one core (N:1). Start 4 L-threads on lcore 0:: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,0,1)" \ --tx="(0,0)(0,1)" Start 4 EAL threads on cpu-set 0:: - l3fwd-thread -c ff -n 2 --lcores="(0-3)@0" -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 --lcores="(0-3)@0" -- -P -p 3 \ --rx="(0,0,0,0)(1,0,0,1)" \ --tx="(2,0)(3,1)" \ --no-lthreads @@ -266,14 +266,14 @@ c) Start threads on different cores (N:M). Start 2 L-threads for RX on lcore 0, and 2 L-threads for TX on lcore 1:: - l3fwd-thread -c ff -n 2 -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 -- -P -p 3 \ --rx="(0,0,0,0)(1,0,0,1)" \ --tx="(1,0)(1,1)" Start 2 EAL threads for RX on cpu-set 0, and 2 EAL threads for TX on cpu-set 1:: - l3fwd-thread -c ff -n 2 --lcores="(0-1)@0,(2-3)@1" -- -P -p 3 \ + l3fwd-thread -l 0-7 -n 2 --lcores="(0-1)@0,(2-3)@1" -- -P -p 3 \ --rx="(0,0,0,0)(1,0,1,1)" \ --tx="(2,0)(3,1)" \ --no-lthreads diff --git a/doc/guides/sample_app_ug/ptpclient.rst b/doc/guides/sample_app_ug/ptpclient.rst index 6e425b7..2c5a60c 100644 --- a/doc/guides/sample_app_ug/ptpclient.rst +++ b/doc/guides/sample_app_ug/ptpclient.rst @@ -119,7 +119,7 @@ To run the example in a ``linuxapp`` environment: .. code-block:: console - ./build/ptpclient -c 2 -n 4 -- -p 0x1 -T 0 + ./build/ptpclient -l 1 -n 4 -- -p 0x1 -T 0 Refer to *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/qos_scheduler.rst b/doc/guides/sample_app_ug/qos_scheduler.rst index 7f9e925..a6654cb 100644 --- a/doc/guides/sample_app_ug/qos_scheduler.rst +++ b/doc/guides/sample_app_ug/qos_scheduler.rst @@ -289,7 +289,7 @@ The following is an example command with a single packet flow configuration: .. code-block:: console - ./qos_sched -c a2 -n 4 -- --pfc "3,2,5,7" --cfg ./profile.cfg + ./qos_sched -l 1,5,7 -n 4 -- --pfc "3,2,5,7" --cfg ./profile.cfg This example uses a single packet flow configuration which creates one RX thread on lcore 5 reading from port 3 and a worker thread on lcore 7 writing to port 2. @@ -298,12 +298,12 @@ Another example with 2 packet flow configurations using different ports but shar .. code-block:: console - ./qos_sched -c c6 -n 4 -- --pfc "3,2,2,6,7" --pfc "1,0,2,6,7" --cfg ./profile.cfg + ./qos_sched -l 1,2,6,7 -n 4 -- --pfc "3,2,2,6,7" --pfc "1,0,2,6,7" --cfg ./profile.cfg Note that independent cores for the packet flow configurations for each of the RX, WT and TX thread are also supported, providing flexibility to balance the work. -The EAL coremask is constrained to contain the default mastercore 1 and the RX, WT and TX cores only. +The EAL coremask/corelist is constrained to contain the default mastercore 1 and the RX, WT and TX cores only. Explanation ----------- diff --git a/doc/guides/sample_app_ug/quota_watermark.rst b/doc/guides/sample_app_ug/quota_watermark.rst index c56683a..c3c8cf6 100644 --- a/doc/guides/sample_app_ug/quota_watermark.rst +++ b/doc/guides/sample_app_ug/quota_watermark.rst @@ -136,7 +136,7 @@ issue the following command: .. code-block:: console - ./qw/build/qw -c f -n 4 -- -p 5 + ./qw/build/qw -l 0-3 -n 4 -- -p 5 Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. @@ -157,7 +157,7 @@ To run the application in a linuxapp environment on logical core 0, issue the fo .. code-block:: console - ./qwctl/build/qwctl -c 1 -n 4 --proc-type=secondary + ./qwctl/build/qwctl -l 0 -n 4 --proc-type=secondary Refer to the *DPDK Getting Started* Guide for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/rxtx_callbacks.rst b/doc/guides/sample_app_ug/rxtx_callbacks.rst index 9df57ed..8d1bb86 100644 --- a/doc/guides/sample_app_ug/rxtx_callbacks.rst +++ b/doc/guides/sample_app_ug/rxtx_callbacks.rst @@ -85,7 +85,7 @@ To run the example in a ``linuxapp`` environment: .. code-block:: console - ./build/rxtx_callbacks -c 2 -n 4 + ./build/rxtx_callbacks -l 1 -n 4 Refer to *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/skeleton.rst b/doc/guides/sample_app_ug/skeleton.rst index e832c13..c39b033 100644 --- a/doc/guides/sample_app_ug/skeleton.rst +++ b/doc/guides/sample_app_ug/skeleton.rst @@ -74,7 +74,7 @@ To run the example in a ``linuxapp`` environment: .. code-block:: console - ./build/basicfwd -c 2 -n 4 + ./build/basicfwd -l 1 -n 4 Refer to *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/tep_termination.rst b/doc/guides/sample_app_ug/tep_termination.rst index 88e08cf..087823b 100644 --- a/doc/guides/sample_app_ug/tep_termination.rst +++ b/doc/guides/sample_app_ug/tep_termination.rst @@ -169,7 +169,7 @@ Running the Sample Code .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- -p 0x1 --dev-basename tep-termination --nb-devices 4 --udp-port 4789 --filter-type 1 @@ -191,7 +191,7 @@ The default value is 2. .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --nb-devices 2 **Tunneling UDP port.** @@ -201,7 +201,7 @@ The default value is 4789. .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --nb-devices 2 --udp-port 4789 **Filter Type.** @@ -212,7 +212,7 @@ The default value is 1, which means the filter type of inner MAC and tenant ID i .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --nb-devices 2 --udp-port 4789 --filter-type 1 **TX Checksum.** @@ -222,7 +222,7 @@ The default value is 0, which means the checksum offload is disabled. .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --nb-devices 2 --tx-checksum **TCP segment size.** @@ -232,7 +232,7 @@ The default value is 0, which means TSO offload is disabled. .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --tx-checksum --tso-segsz 800 **Decapsulation option.** @@ -242,7 +242,7 @@ The default value is 1. .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --nb-devices 4 --udp-port 4789 --decap 1 **Encapsulation option.** @@ -252,7 +252,7 @@ The default value is 1. .. code-block:: console - user@target:~$ ./build/app/tep_termination -c f -n 4 --huge-dir /mnt/huge -- + user@target:~$ ./build/app/tep_termination -l 0-3 -n 4 --huge-dir /mnt/huge -- --nb-devices 4 --udp-port 4789 --encap 1 diff --git a/doc/guides/sample_app_ug/test_pipeline.rst b/doc/guides/sample_app_ug/test_pipeline.rst index fd28813..95c7e0f 100644 --- a/doc/guides/sample_app_ug/test_pipeline.rst +++ b/doc/guides/sample_app_ug/test_pipeline.rst @@ -90,7 +90,7 @@ The application execution command line is: ./test-pipeline [EAL options] -- -p PORTMASK --TABLE_TYPE -The -c EAL CPU core mask option has to contain exactly 3 CPU cores. +The -c or -l EAL CPU coremask/corelist option has to contain exactly 3 CPU cores. The first CPU core in the core mask is assigned for core A, the second for core B and the third for core C. The PORTMASK parameter must contain 2 or 4 ports. diff --git a/doc/guides/sample_app_ug/timer.rst b/doc/guides/sample_app_ug/timer.rst index e4de359..00b6953 100644 --- a/doc/guides/sample_app_ug/timer.rst +++ b/doc/guides/sample_app_ug/timer.rst @@ -65,7 +65,7 @@ To run the example in linuxapp environment: .. code-block:: console - $ ./build/timer -c f -n 4 + $ ./build/timer -l 0-3 -n 4 Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/sample_app_ug/vhost.rst b/doc/guides/sample_app_ug/vhost.rst index 95db988..a2a3909 100644 --- a/doc/guides/sample_app_ug/vhost.rst +++ b/doc/guides/sample_app_ug/vhost.rst @@ -75,7 +75,7 @@ Start the vswitch example .. code-block:: console - ./vhost-switch -c f -n 4 --socket-mem 1024 \ + ./vhost-switch -l 0-3 -n 4 --socket-mem 1024 \ -- --socket-file /tmp/sock0 --client \ ... @@ -121,7 +121,7 @@ Then start testpmd for packet forwarding testing. .. code-block:: console - ./x86_64-native-gcc/app/testpmd -c 0x3 -- -i + ./x86_64-native-gcc/app/testpmd -l 0-1 -- -i > start tx_first Inject packets diff --git a/doc/guides/sample_app_ug/vm_power_management.rst b/doc/guides/sample_app_ug/vm_power_management.rst index aa02c15..05c26b0 100644 --- a/doc/guides/sample_app_ug/vm_power_management.rst +++ b/doc/guides/sample_app_ug/vm_power_management.rst @@ -220,7 +220,7 @@ on cores 0 & 1 on a system with 4 memory channels: .. code-block:: console - ./build/vm_power_mgr -c 0x3 -n 4 + ./build/vm_power_mgr -l 0-1 -n 4 After successful initialization the user is presented with VM Power Manager CLI: @@ -342,7 +342,7 @@ for example to run on cores 0,1,2,3 on a system with 4 memory channels: .. code-block:: console - ./build/guest_vm_power_mgr -c 0xf -n 4 + ./build/guest_vm_power_mgr -l 0-3 -n 4 After successful initialization the user is presented with VM Power Manager Guest CLI: diff --git a/doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst b/doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst index bf55fda..70e1d19 100644 --- a/doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst +++ b/doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst @@ -114,7 +114,7 @@ To run the example in a linuxapp environment: .. code-block:: console - user@target:~$ ./build/vmdq_dcb -c f -n 4 -- -p 0x3 --nb-pools 32 --nb-tcs 4 + user@target:~$ ./build/vmdq_dcb -l 0-3 -n 4 -- -p 0x3 --nb-pools 32 --nb-tcs 4 Refer to the *DPDK Getting Started Guide* for general information on running applications and the Environment Abstraction Layer (EAL) options. diff --git a/doc/guides/testpmd_app_ug/run_app.rst b/doc/guides/testpmd_app_ug/run_app.rst index 38a4025..d1fabef 100644 --- a/doc/guides/testpmd_app_ug/run_app.rst +++ b/doc/guides/testpmd_app_ug/run_app.rst @@ -165,7 +165,7 @@ They must be separated from the EAL options, shown in the previous section, with .. code-block:: console - sudo ./testpmd -c 0xF -n 4 -- -i --portmask=0x1 --nb-cores=2 + sudo ./testpmd -l 0-3 -n 4 -- -i --portmask=0x1 --nb-cores=2 The commandline options are: diff --git a/doc/guides/tools/cryptoperf.rst b/doc/guides/tools/cryptoperf.rst index 1fc40c4..1117ebf 100644 --- a/doc/guides/tools/cryptoperf.rst +++ b/doc/guides/tools/cryptoperf.rst @@ -109,9 +109,10 @@ The following are the EAL command-line options that can be used in conjunction with the ``dpdk-test-crypto-perf`` applcation. See the DPDK Getting Started Guides for more information on these options. -* ``-c `` +* ``-c `` or ``-l `` - Set the hexadecimal bitmask of the cores to run on. + Set the hexadecimal bitmask of the cores to run on. The corelist is a + list cores to use. * ``-w `` @@ -350,7 +351,7 @@ Call application for performance throughput test of single Aesni MB PMD for cipher encryption aes-cbc and auth generation sha1-hmac, one milion operations, burst size 32, packet size 64:: - dpdk-test-crypto-perf -c 0xc0 --vdev crypto_aesni_mb_pmd -w 0000:00:00.0 -- + dpdk-test-crypto-perf -l 6-7 --vdev crypto_aesni_mb_pmd -w 0000:00:00.0 -- --ptest throughput --devtype crypto_aesni_mb --optype cipher-then-auth --cipher-algo aes-cbc --cipher-op encrypt --cipher-key-sz 16 --auth-algo sha1-hmac --auth-op generate --auth-key-sz 64 --auth-digest-sz 12 @@ -359,7 +360,7 @@ one milion operations, burst size 32, packet size 64:: Call application for performance latency test of two Aesni MB PMD executed on two cores for cipher encryption aes-cbc, ten operations in silent mode:: - dpdk-test-crypto-perf -c 0xf0 --vdev crypto_aesni_mb_pmd1 + dpdk-test-crypto-perf -l 4-7 --vdev crypto_aesni_mb_pmd1 --vdev crypto_aesni_mb_pmd2 -w 0000:00:00.0 -- --devtype crypto_aesni_mb --cipher-algo aes-cbc --cipher-key-sz 16 --cipher-iv-sz 16 --cipher-op encrypt --optype cipher-only --silent @@ -370,7 +371,7 @@ for cipher encryption aes-gcm and auth generation aes-gcm,ten operations in silent mode, test vector provide in file "test_aes_gcm.data" with packet verification:: - dpdk-test-crypto-perf -c 0xf0 --vdev crypto_openssl -w 0000:00:00.0 -- + dpdk-test-crypto-perf -l 4-7 --vdev crypto_openssl -w 0000:00:00.0 -- --devtype crypto_openssl --cipher-algo aes-gcm --cipher-key-sz 16 --cipher-iv-sz 16 --cipher-op encrypt --auth-algo aes-gcm --auth-key-sz 16 --auth-digest-sz 16 --auth-aad-sz 16 --auth-op generate --optype aead diff --git a/doc/guides/xen/pkt_switch.rst b/doc/guides/xen/pkt_switch.rst index 0b4ddfd..717a04b 100644 --- a/doc/guides/xen/pkt_switch.rst +++ b/doc/guides/xen/pkt_switch.rst @@ -331,7 +331,7 @@ Building and Running the Switching Backend .. code-block:: console - examples/vhost_xen/build/vhost-switch -c f -n 3 --xen-dom0 -- -p1 + examples/vhost_xen/build/vhost-switch -l 0-3 -n 3 --xen-dom0 -- -p1 .. note:: @@ -409,7 +409,7 @@ Building and Running the Front End .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c f -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:11" + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:11" testpmd>set fwd mac testpmd>start @@ -430,7 +430,7 @@ Run TestPMD in a guest VM: .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c f -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:11" -- -i --eth-peer=0,00:00:00:00:00:22 + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:11" -- -i --eth-peer=0,00:00:00:00:00:22 testpmd> set fwd mac testpmd> start @@ -453,13 +453,13 @@ Run TestPMD in guest VM1: .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c f -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:11" -- -i --eth-peer=0,00:00:00:00:00:22 -- -i + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:11" -- -i --eth-peer=0,00:00:00:00:00:22 -- -i Run TestPMD in guest VM2: .. code-block:: console - ./x86_64-native-linuxapp-gcc/app/testpmd -c f -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:22" -- -i --eth-peer=0,00:00:00:00:00:33 + ./x86_64-native-linuxapp-gcc/app/testpmd -l 0-3 -n 4 --vdev="net_xenvirt0,mac=00:00:00:00:00:22" -- -i --eth-peer=0,00:00:00:00:00:33 Configure a packet stream in the packet generator, and set the destination MAC address to 00:00:00:00:00:11 and VLAN to 1000. The packets received in Virtio in guest VM1 will be forwarded to Virtio in guest VM2 and -- 2.8.0.GIT