1a9263e3cSJerin Jacob.. SPDX-License-Identifier: BSD-3-Clause 2a9263e3cSJerin Jacob Copyright(c) 2017 Cavium, Inc 364b20e7fSGuduri Prathyusha 464b20e7fSGuduri Prathyushadpdk-test-eventdev Application 564b20e7fSGuduri Prathyusha============================== 664b20e7fSGuduri Prathyusha 764b20e7fSGuduri PrathyushaThe ``dpdk-test-eventdev`` tool is a Data Plane Development Kit (DPDK) 864b20e7fSGuduri Prathyushaapplication that allows exercising various eventdev use cases. 964b20e7fSGuduri PrathyushaThis application has a generic framework to add new eventdev based test cases to 1064b20e7fSGuduri Prathyushaverify functionality and measure the performance parameters of DPDK eventdev 1164b20e7fSGuduri Prathyushadevices. 1264b20e7fSGuduri Prathyusha 1364b20e7fSGuduri PrathyushaCompiling the Application 1464b20e7fSGuduri Prathyusha------------------------- 1564b20e7fSGuduri Prathyusha 1664b20e7fSGuduri Prathyusha**Build the application** 1764b20e7fSGuduri Prathyusha 1864b20e7fSGuduri PrathyushaExecute the ``dpdk-setup.sh`` script to build the DPDK library together with the 1964b20e7fSGuduri Prathyusha``dpdk-test-eventdev`` application. 2064b20e7fSGuduri Prathyusha 2164b20e7fSGuduri PrathyushaInitially, the user must select a DPDK target to choose the correct target type 2264b20e7fSGuduri Prathyushaand compiler options to use when building the libraries. 2364b20e7fSGuduri PrathyushaThe user must have all libraries, modules, updates and compilers installed 2464b20e7fSGuduri Prathyushain the system prior to this, 2564b20e7fSGuduri Prathyushaas described in the earlier chapters in this Getting Started Guide. 2664b20e7fSGuduri Prathyusha 2764b20e7fSGuduri PrathyushaRunning the Application 2864b20e7fSGuduri Prathyusha----------------------- 2964b20e7fSGuduri Prathyusha 3064b20e7fSGuduri PrathyushaThe application has a number of command line options: 3164b20e7fSGuduri Prathyusha 3264b20e7fSGuduri Prathyusha.. code-block:: console 3364b20e7fSGuduri Prathyusha 3464b20e7fSGuduri Prathyusha dpdk-test-eventdev [EAL Options] -- [application options] 3564b20e7fSGuduri Prathyusha 3664b20e7fSGuduri PrathyushaEAL Options 3764b20e7fSGuduri Prathyusha~~~~~~~~~~~ 3864b20e7fSGuduri Prathyusha 3964b20e7fSGuduri PrathyushaThe following are the EAL command-line options that can be used in conjunction 4064b20e7fSGuduri Prathyushawith the ``dpdk-test-eventdev`` application. 4164b20e7fSGuduri PrathyushaSee the DPDK Getting Started Guides for more information on these options. 4264b20e7fSGuduri Prathyusha 4364b20e7fSGuduri Prathyusha* ``-c <COREMASK>`` or ``-l <CORELIST>`` 4464b20e7fSGuduri Prathyusha 4564b20e7fSGuduri Prathyusha Set the hexadecimal bitmask of the cores to run on. The corelist is a 4664b20e7fSGuduri Prathyusha list of cores to use. 4764b20e7fSGuduri Prathyusha 4864b20e7fSGuduri Prathyusha* ``--vdev <driver><id>`` 4964b20e7fSGuduri Prathyusha 5064b20e7fSGuduri Prathyusha Add a virtual eventdev device. 5164b20e7fSGuduri Prathyusha 5264b20e7fSGuduri PrathyushaApplication Options 5364b20e7fSGuduri Prathyusha~~~~~~~~~~~~~~~~~~~ 5464b20e7fSGuduri Prathyusha 5564b20e7fSGuduri PrathyushaThe following are the application command-line options: 5664b20e7fSGuduri Prathyusha 5764b20e7fSGuduri Prathyusha* ``--verbose`` 5864b20e7fSGuduri Prathyusha 5964b20e7fSGuduri Prathyusha Set verbose level. Default is 1. Value > 1 displays more details. 6064b20e7fSGuduri Prathyusha 6164b20e7fSGuduri Prathyusha* ``--dev <n>`` 6264b20e7fSGuduri Prathyusha 6364b20e7fSGuduri Prathyusha Set the device id of the event device. 6464b20e7fSGuduri Prathyusha 6564b20e7fSGuduri Prathyusha* ``--test <name>`` 6664b20e7fSGuduri Prathyusha 6764b20e7fSGuduri Prathyusha Set test name, where ``name`` is one of the following:: 6864b20e7fSGuduri Prathyusha 6964b20e7fSGuduri Prathyusha order_queue 7064b20e7fSGuduri Prathyusha order_atq 7164b20e7fSGuduri Prathyusha perf_queue 7264b20e7fSGuduri Prathyusha perf_atq 73a4f56123SPavan Nikhilesh pipeline_atq 74a4f56123SPavan Nikhilesh pipeline_queue 7564b20e7fSGuduri Prathyusha 7664b20e7fSGuduri Prathyusha* ``--socket_id <n>`` 7764b20e7fSGuduri Prathyusha 7864b20e7fSGuduri Prathyusha Set the socket id of the application resources. 7964b20e7fSGuduri Prathyusha 8064b20e7fSGuduri Prathyusha* ``--pool-sz <n>`` 8164b20e7fSGuduri Prathyusha 8264b20e7fSGuduri Prathyusha Set the number of mbufs to be allocated from the mempool. 8364b20e7fSGuduri Prathyusha 8464b20e7fSGuduri Prathyusha* ``--plcores <CORELIST>`` 8564b20e7fSGuduri Prathyusha 8664b20e7fSGuduri Prathyusha Set the list of cores to be used as producers. 8764b20e7fSGuduri Prathyusha 8864b20e7fSGuduri Prathyusha* ``--wlcores <CORELIST>`` 8964b20e7fSGuduri Prathyusha 9064b20e7fSGuduri Prathyusha Set the list of cores to be used as workers. 9164b20e7fSGuduri Prathyusha 9264b20e7fSGuduri Prathyusha* ``--stlist <type_list>`` 9364b20e7fSGuduri Prathyusha 9464b20e7fSGuduri Prathyusha Set the scheduled type of each stage where ``type_list`` size 9564b20e7fSGuduri Prathyusha determines the number of stages used in the test application. 9664b20e7fSGuduri Prathyusha Each type_list member can be one of the following:: 9764b20e7fSGuduri Prathyusha 9864b20e7fSGuduri Prathyusha P or p : Parallel schedule type 9964b20e7fSGuduri Prathyusha O or o : Ordered schedule type 10064b20e7fSGuduri Prathyusha A or a : Atomic schedule type 10164b20e7fSGuduri Prathyusha 10264b20e7fSGuduri Prathyusha Application expects the ``type_list`` in comma separated form (i.e. ``--stlist o,a,a,a``) 10364b20e7fSGuduri Prathyusha 10464b20e7fSGuduri Prathyusha* ``--nb_flows <n>`` 10564b20e7fSGuduri Prathyusha 10664b20e7fSGuduri Prathyusha Set the number of flows to produce. 10764b20e7fSGuduri Prathyusha 10864b20e7fSGuduri Prathyusha* ``--nb_pkts <n>`` 10964b20e7fSGuduri Prathyusha 11064b20e7fSGuduri Prathyusha Set the number of packets to produce. 0 implies no limit. 11164b20e7fSGuduri Prathyusha 11264b20e7fSGuduri Prathyusha* ``--worker_deq_depth <n>`` 11364b20e7fSGuduri Prathyusha 11464b20e7fSGuduri Prathyusha Set the dequeue depth of the worker. 11564b20e7fSGuduri Prathyusha 11664b20e7fSGuduri Prathyusha* ``--fwd_latency`` 11764b20e7fSGuduri Prathyusha 11864b20e7fSGuduri Prathyusha Perform forward latency measurement. 11964b20e7fSGuduri Prathyusha 12064b20e7fSGuduri Prathyusha* ``--queue_priority`` 12164b20e7fSGuduri Prathyusha 12264b20e7fSGuduri Prathyusha Enable queue priority. 12364b20e7fSGuduri Prathyusha 124b01974daSPavan Nikhilesh* ``--prod_type_ethdev`` 125b01974daSPavan Nikhilesh 126b01974daSPavan Nikhilesh Use ethernet device as producer. 127f6dda591SJerin Jacob 128d008f20bSPavan Nikhilesh* ``--prod_type_timerdev`` 129d008f20bSPavan Nikhilesh 130d008f20bSPavan Nikhilesh Use event timer adapter as producer. 131d008f20bSPavan Nikhilesh 13217b22d0bSPavan Nikhilesh* ``--prod_type_timerdev_burst`` 13317b22d0bSPavan Nikhilesh 13417b22d0bSPavan Nikhilesh Use burst mode event timer adapter as producer. 13517b22d0bSPavan Nikhilesh 13698c62921SPavan Nikhilesh* ``--timer_tick_nsec`` 13798c62921SPavan Nikhilesh 13898c62921SPavan Nikhilesh Used to dictate number of nano seconds between bucket traversal of the 13998c62921SPavan Nikhilesh event timer adapter. Refer `rte_event_timer_adapter_conf`. 14098c62921SPavan Nikhilesh 14198c62921SPavan Nikhilesh* ``--max_tmo_nsec`` 14298c62921SPavan Nikhilesh 14398c62921SPavan Nikhilesh Used to configure event timer adapter max arm timeout in nano seconds. 14498c62921SPavan Nikhilesh 14598c62921SPavan Nikhilesh* ``--expiry_nsec`` 14698c62921SPavan Nikhilesh 14798c62921SPavan Nikhilesh Dictate the number of nano seconds after which the event timer expires. 14898c62921SPavan Nikhilesh 14998c62921SPavan Nikhilesh* ``--nb_timers`` 15098c62921SPavan Nikhilesh 15198c62921SPavan Nikhilesh Number of event timers each producer core will generate. 15298c62921SPavan Nikhilesh 15398c62921SPavan Nikhilesh* ``--nb_timer_adptrs`` 15498c62921SPavan Nikhilesh 15598c62921SPavan Nikhilesh Number of event timer adapters to be used. Each adapter is used in 15698c62921SPavan Nikhilesh round robin manner by the producer cores. 15798c62921SPavan Nikhilesh 158f0959283SPavan Nikhilesh* ``--deq_tmo_nsec`` 159f0959283SPavan Nikhilesh 160f0959283SPavan Nikhilesh Global dequeue timeout for all the event ports if the provided dequeue 161f0959283SPavan Nikhilesh timeout is out of the supported range of event device it will be 162f0959283SPavan Nikhilesh adjusted to the highest/lowest supported dequeue timeout supported. 163f0959283SPavan Nikhilesh 164*fc8b96fbSPavan Nikhilesh* ``--mbuf_sz`` 165*fc8b96fbSPavan Nikhilesh 166*fc8b96fbSPavan Nikhilesh Set packet mbuf size. Can be used to configure Jumbo Frames. Only 167*fc8b96fbSPavan Nikhilesh applicable for `pipeline_atq` and `pipeline_queue` tests. 168*fc8b96fbSPavan Nikhilesh 169*fc8b96fbSPavan Nikhilesh* ``--max_pkt_sz`` 170*fc8b96fbSPavan Nikhilesh 171*fc8b96fbSPavan Nikhilesh Set max packet mbuf size. Can be used configure Rx/Tx scatter gather. 172*fc8b96fbSPavan Nikhilesh Only applicable for `pipeline_atq` and `pipeline_queue` tests. 173*fc8b96fbSPavan Nikhilesh 174f0959283SPavan Nikhilesh 175f6dda591SJerin JacobEventdev Tests 176f6dda591SJerin Jacob-------------- 177f6dda591SJerin Jacob 178f6dda591SJerin JacobORDER_QUEUE Test 179f6dda591SJerin Jacob~~~~~~~~~~~~~~~~ 180f6dda591SJerin Jacob 181f6dda591SJerin JacobThis is a functional test case that aims at testing the following: 182f6dda591SJerin Jacob 183f6dda591SJerin Jacob#. Verify the ingress order maintenance. 184f6dda591SJerin Jacob#. Verify the exclusive(atomic) access to given atomic flow per eventdev port. 185f6dda591SJerin Jacob 186f6dda591SJerin Jacob.. _table_eventdev_order_queue_test: 187f6dda591SJerin Jacob 188f6dda591SJerin Jacob.. table:: Order queue test eventdev configuration. 189f6dda591SJerin Jacob 190f6dda591SJerin Jacob +---+--------------+----------------+------------------------+ 191f6dda591SJerin Jacob | # | Items | Value | Comments | 192f6dda591SJerin Jacob | | | | | 193f6dda591SJerin Jacob +===+==============+================+========================+ 194f6dda591SJerin Jacob | 1 | nb_queues | 2 | q0(ordered), q1(atomic)| 195f6dda591SJerin Jacob | | | | | 196f6dda591SJerin Jacob +---+--------------+----------------+------------------------+ 197f6dda591SJerin Jacob | 2 | nb_producers | 1 | | 198f6dda591SJerin Jacob | | | | | 199f6dda591SJerin Jacob +---+--------------+----------------+------------------------+ 200f6dda591SJerin Jacob | 3 | nb_workers | >= 1 | | 201f6dda591SJerin Jacob | | | | | 202f6dda591SJerin Jacob +---+--------------+----------------+------------------------+ 203f6dda591SJerin Jacob | 4 | nb_ports | nb_workers + | Workers use port 0 to | 204f6dda591SJerin Jacob | | | 1 | port n-1. Producer uses| 205f6dda591SJerin Jacob | | | | port n | 206f6dda591SJerin Jacob +---+--------------+----------------+------------------------+ 207f6dda591SJerin Jacob 208f6dda591SJerin Jacob.. _figure_eventdev_order_queue_test: 209f6dda591SJerin Jacob 210f6dda591SJerin Jacob.. figure:: img/eventdev_order_queue_test.* 211f6dda591SJerin Jacob 212f6dda591SJerin Jacob order queue test operation. 213f6dda591SJerin Jacob 214f6dda591SJerin JacobThe order queue test configures the eventdev with two queues and an event 215f6dda591SJerin Jacobproducer to inject the events to q0(ordered) queue. Both q0(ordered) and 216f6dda591SJerin Jacobq1(atomic) are linked to all the workers. 217f6dda591SJerin Jacob 218f6dda591SJerin JacobThe event producer maintains a sequence number per flow and injects the events 219f6dda591SJerin Jacobto the ordered queue. The worker receives the events from ordered queue and 220f6dda591SJerin Jacobforwards to atomic queue. Since the events from an ordered queue can be 221f6dda591SJerin Jacobprocessed in parallel on the different workers, the ingress order of events 222f6dda591SJerin Jacobmight have changed on the downstream atomic queue enqueue. On enqueue to the 223f6dda591SJerin Jacobatomic queue, the eventdev PMD driver reorders the event to the original 224f6dda591SJerin Jacobingress order(i.e producer ingress order). 225f6dda591SJerin Jacob 226f6dda591SJerin JacobWhen the event is dequeued from the atomic queue by the worker, this test 227f6dda591SJerin Jacobverifies the expected sequence number of associated event per flow by comparing 228f6dda591SJerin Jacobthe free running expected sequence number per flow. 229f6dda591SJerin Jacob 230f6dda591SJerin JacobApplication options 231f6dda591SJerin Jacob^^^^^^^^^^^^^^^^^^^ 232f6dda591SJerin Jacob 233f6dda591SJerin JacobSupported application command line options are following:: 234f6dda591SJerin Jacob 235f6dda591SJerin Jacob --verbose 236f6dda591SJerin Jacob --dev 237f6dda591SJerin Jacob --test 238f6dda591SJerin Jacob --socket_id 239f6dda591SJerin Jacob --pool_sz 240f6dda591SJerin Jacob --plcores 241f6dda591SJerin Jacob --wlcores 242f6dda591SJerin Jacob --nb_flows 243f6dda591SJerin Jacob --nb_pkts 244f6dda591SJerin Jacob --worker_deq_depth 245f0959283SPavan Nikhilesh --deq_tmo_nsec 246f6dda591SJerin Jacob 247f6dda591SJerin JacobExample 248f6dda591SJerin Jacob^^^^^^^ 249f6dda591SJerin Jacob 250f6dda591SJerin JacobExample command to run order queue test: 251f6dda591SJerin Jacob 252f6dda591SJerin Jacob.. code-block:: console 253f6dda591SJerin Jacob 254f6dda591SJerin Jacob sudo build/app/dpdk-test-eventdev --vdev=event_sw0 -- \ 255f6dda591SJerin Jacob --test=order_queue --plcores 1 --wlcores 2,3 256f6dda591SJerin Jacob 257f6dda591SJerin Jacob 258dd37027fSJerin JacobORDER_ATQ Test 259dd37027fSJerin Jacob~~~~~~~~~~~~~~ 260dd37027fSJerin Jacob 261dd37027fSJerin JacobThis test verifies the same aspects of ``order_queue`` test, the difference is 262dd37027fSJerin Jacobthe number of queues used, this test operates on a single ``all types queue(atq)`` 263dd37027fSJerin Jacobinstead of two different queues for ordered and atomic. 264dd37027fSJerin Jacob 265dd37027fSJerin Jacob.. _table_eventdev_order_atq_test: 266dd37027fSJerin Jacob 267dd37027fSJerin Jacob.. table:: Order all types queue test eventdev configuration. 268dd37027fSJerin Jacob 269dd37027fSJerin Jacob +---+--------------+----------------+------------------------+ 270dd37027fSJerin Jacob | # | Items | Value | Comments | 271dd37027fSJerin Jacob | | | | | 272dd37027fSJerin Jacob +===+==============+================+========================+ 273dd37027fSJerin Jacob | 1 | nb_queues | 1 | q0(all types queue) | 274dd37027fSJerin Jacob | | | | | 275dd37027fSJerin Jacob +---+--------------+----------------+------------------------+ 276dd37027fSJerin Jacob | 2 | nb_producers | 1 | | 277dd37027fSJerin Jacob | | | | | 278dd37027fSJerin Jacob +---+--------------+----------------+------------------------+ 279dd37027fSJerin Jacob | 3 | nb_workers | >= 1 | | 280dd37027fSJerin Jacob | | | | | 281dd37027fSJerin Jacob +---+--------------+----------------+------------------------+ 282dd37027fSJerin Jacob | 4 | nb_ports | nb_workers + | Workers use port 0 to | 283dd37027fSJerin Jacob | | | 1 | port n-1.Producer uses | 284dd37027fSJerin Jacob | | | | port n. | 285dd37027fSJerin Jacob +---+--------------+----------------+------------------------+ 286dd37027fSJerin Jacob 287dd37027fSJerin Jacob.. _figure_eventdev_order_atq_test: 288dd37027fSJerin Jacob 289dd37027fSJerin Jacob.. figure:: img/eventdev_order_atq_test.* 290dd37027fSJerin Jacob 291dd37027fSJerin Jacob order all types queue test operation. 292dd37027fSJerin Jacob 293dd37027fSJerin JacobApplication options 294dd37027fSJerin Jacob^^^^^^^^^^^^^^^^^^^ 295dd37027fSJerin Jacob 296dd37027fSJerin JacobSupported application command line options are following:: 297dd37027fSJerin Jacob 298dd37027fSJerin Jacob --verbose 299dd37027fSJerin Jacob --dev 300dd37027fSJerin Jacob --test 301dd37027fSJerin Jacob --socket_id 302dd37027fSJerin Jacob --pool_sz 303dd37027fSJerin Jacob --plcores 304dd37027fSJerin Jacob --wlcores 305dd37027fSJerin Jacob --nb_flows 306dd37027fSJerin Jacob --nb_pkts 307dd37027fSJerin Jacob --worker_deq_depth 308f0959283SPavan Nikhilesh --deq_tmo_nsec 309dd37027fSJerin Jacob 310dd37027fSJerin JacobExample 311dd37027fSJerin Jacob^^^^^^^ 312dd37027fSJerin Jacob 313dd37027fSJerin JacobExample command to run order ``all types queue`` test: 314dd37027fSJerin Jacob 315dd37027fSJerin Jacob.. code-block:: console 316dd37027fSJerin Jacob 317dd37027fSJerin Jacob sudo build/app/dpdk-test-eventdev --vdev=event_octeontx -- \ 318dd37027fSJerin Jacob --test=order_atq --plcores 1 --wlcores 2,3 319dd37027fSJerin Jacob 320dd37027fSJerin Jacob 32143bc2fefSJerin JacobPERF_QUEUE Test 32243bc2fefSJerin Jacob~~~~~~~~~~~~~~~ 32343bc2fefSJerin Jacob 32443bc2fefSJerin JacobThis is a performance test case that aims at testing the following: 32543bc2fefSJerin Jacob 32643bc2fefSJerin Jacob#. Measure the number of events can be processed in a second. 32743bc2fefSJerin Jacob#. Measure the latency to forward an event. 32843bc2fefSJerin Jacob 32943bc2fefSJerin Jacob.. _table_eventdev_perf_queue_test: 33043bc2fefSJerin Jacob 33143bc2fefSJerin Jacob.. table:: Perf queue test eventdev configuration. 33243bc2fefSJerin Jacob 33343bc2fefSJerin Jacob +---+--------------+----------------+-----------------------------------------+ 33443bc2fefSJerin Jacob | # | Items | Value | Comments | 33543bc2fefSJerin Jacob | | | | | 33643bc2fefSJerin Jacob +===+==============+================+=========================================+ 33743bc2fefSJerin Jacob | 1 | nb_queues | nb_producers * | Queues will be configured based on the | 33843bc2fefSJerin Jacob | | | nb_stages | user requested sched type list(--stlist)| 33943bc2fefSJerin Jacob +---+--------------+----------------+-----------------------------------------+ 34043bc2fefSJerin Jacob | 2 | nb_producers | >= 1 | Selected through --plcores command line | 34143bc2fefSJerin Jacob | | | | argument. | 34243bc2fefSJerin Jacob +---+--------------+----------------+-----------------------------------------+ 34343bc2fefSJerin Jacob | 3 | nb_workers | >= 1 | Selected through --wlcores command line | 34443bc2fefSJerin Jacob | | | | argument | 34543bc2fefSJerin Jacob +---+--------------+----------------+-----------------------------------------+ 34643bc2fefSJerin Jacob | 4 | nb_ports | nb_workers + | Workers use port 0 to port n-1. | 34743bc2fefSJerin Jacob | | | nb_producers | Producers use port n to port p | 34843bc2fefSJerin Jacob +---+--------------+----------------+-----------------------------------------+ 34943bc2fefSJerin Jacob 35043bc2fefSJerin Jacob.. _figure_eventdev_perf_queue_test: 35143bc2fefSJerin Jacob 35243bc2fefSJerin Jacob.. figure:: img/eventdev_perf_queue_test.* 35343bc2fefSJerin Jacob 35443bc2fefSJerin Jacob perf queue test operation. 35543bc2fefSJerin Jacob 35643bc2fefSJerin JacobThe perf queue test configures the eventdev with Q queues and P ports, where 35743bc2fefSJerin JacobQ and P is a function of the number of workers, the number of producers and 35843bc2fefSJerin Jacobnumber of stages as mentioned in :numref:`table_eventdev_perf_queue_test`. 35943bc2fefSJerin Jacob 36043bc2fefSJerin JacobThe user can choose the number of workers, the number of producers and number of 36143bc2fefSJerin Jacobstages through the ``--wlcores``, ``--plcores`` and the ``--stlist`` application 36243bc2fefSJerin Jacobcommand line arguments respectively. 36343bc2fefSJerin Jacob 36443bc2fefSJerin JacobThe producer(s) injects the events to eventdev based the first stage sched type 36543bc2fefSJerin Jacoblist requested by the user through ``--stlist`` the command line argument. 36643bc2fefSJerin Jacob 36743bc2fefSJerin JacobBased on the number of stages to process(selected through ``--stlist``), 36843bc2fefSJerin JacobThe application forwards the event to next upstream queue and terminates when it 36943bc2fefSJerin Jacobreaches the last stage in the pipeline. On event termination, application 37043bc2fefSJerin Jacobincrements the number events processed and print periodically in one second 37143bc2fefSJerin Jacobto get the number of events processed in one second. 37243bc2fefSJerin Jacob 37343bc2fefSJerin JacobWhen ``--fwd_latency`` command line option selected, the application inserts 37443bc2fefSJerin Jacobthe timestamp in the event on the first stage and then on termination, it 37543bc2fefSJerin Jacobupdates the number of cycles to forward a packet. The application uses this 37643bc2fefSJerin Jacobvalue to compute the average latency to a forward packet. 37743bc2fefSJerin Jacob 378b01974daSPavan NikhileshWhen ``--prod_type_ethdev`` command line option is selected, the application 379b01974daSPavan Nikhileshuses the probed ethernet devices as producers by configuring them as Rx 380b01974daSPavan Nikhileshadapters instead of using synthetic producers. 381b01974daSPavan Nikhilesh 38243bc2fefSJerin JacobApplication options 38343bc2fefSJerin Jacob^^^^^^^^^^^^^^^^^^^ 38443bc2fefSJerin Jacob 38543bc2fefSJerin JacobSupported application command line options are following:: 38643bc2fefSJerin Jacob 38743bc2fefSJerin Jacob --verbose 38843bc2fefSJerin Jacob --dev 38943bc2fefSJerin Jacob --test 39043bc2fefSJerin Jacob --socket_id 39143bc2fefSJerin Jacob --pool_sz 39243bc2fefSJerin Jacob --plcores 39343bc2fefSJerin Jacob --wlcores 39443bc2fefSJerin Jacob --stlist 39543bc2fefSJerin Jacob --nb_flows 39643bc2fefSJerin Jacob --nb_pkts 39743bc2fefSJerin Jacob --worker_deq_depth 39843bc2fefSJerin Jacob --fwd_latency 39943bc2fefSJerin Jacob --queue_priority 400b01974daSPavan Nikhilesh --prod_type_ethdev 40117b22d0bSPavan Nikhilesh --prod_type_timerdev_burst 402d008f20bSPavan Nikhilesh --prod_type_timerdev 40398c62921SPavan Nikhilesh --timer_tick_nsec 40498c62921SPavan Nikhilesh --max_tmo_nsec 40598c62921SPavan Nikhilesh --expiry_nsec 40698c62921SPavan Nikhilesh --nb_timers 40798c62921SPavan Nikhilesh --nb_timer_adptrs 408f0959283SPavan Nikhilesh --deq_tmo_nsec 40943bc2fefSJerin Jacob 41043bc2fefSJerin JacobExample 41143bc2fefSJerin Jacob^^^^^^^ 41243bc2fefSJerin Jacob 41343bc2fefSJerin JacobExample command to run perf queue test: 41443bc2fefSJerin Jacob 41543bc2fefSJerin Jacob.. code-block:: console 41643bc2fefSJerin Jacob 41712a33b67SPavan Nikhilesh sudo build/app/dpdk-test-eventdev -c 0xf -s 0x1 --vdev=event_sw0 -- \ 41812a33b67SPavan Nikhilesh --test=perf_queue --plcores=2 --wlcore=3 --stlist=p --nb_pkts=0 41943bc2fefSJerin Jacob 420b01974daSPavan NikhileshExample command to run perf queue test with ethernet ports: 421b01974daSPavan Nikhilesh 422b01974daSPavan Nikhilesh.. code-block:: console 423b01974daSPavan Nikhilesh 424b01974daSPavan Nikhilesh sudo build/app/dpdk-test-eventdev --vdev=event_sw0 -- \ 425b01974daSPavan Nikhilesh --test=perf_queue --plcores=2 --wlcore=3 --stlist=p --prod_type_ethdev 426f6dda591SJerin Jacob 427d008f20bSPavan NikhileshExample command to run perf queue test with event timer adapter: 428d008f20bSPavan Nikhilesh 429d008f20bSPavan Nikhilesh.. code-block:: console 430d008f20bSPavan Nikhilesh 431d008f20bSPavan Nikhilesh sudo build/app/dpdk-test-eventdev --vdev="event_octeontx" -- \ 432d008f20bSPavan Nikhilesh --wlcores 4 --plcores 12 --test perf_queue --stlist=a \ 433d008f20bSPavan Nikhilesh --prod_type_timerdev --fwd_latency 434d008f20bSPavan Nikhilesh 435b3d4e665SJerin JacobPERF_ATQ Test 436b3d4e665SJerin Jacob~~~~~~~~~~~~~~~ 437b3d4e665SJerin Jacob 438b3d4e665SJerin JacobThis is a performance test case that aims at testing the following with 439b3d4e665SJerin Jacob``all types queue`` eventdev scheme. 440b3d4e665SJerin Jacob 441b3d4e665SJerin Jacob#. Measure the number of events can be processed in a second. 442b3d4e665SJerin Jacob#. Measure the latency to forward an event. 443b3d4e665SJerin Jacob 444b3d4e665SJerin Jacob.. _table_eventdev_perf_atq_test: 445b3d4e665SJerin Jacob 446b3d4e665SJerin Jacob.. table:: Perf all types queue test eventdev configuration. 447b3d4e665SJerin Jacob 448b3d4e665SJerin Jacob +---+--------------+----------------+-----------------------------------------+ 449b3d4e665SJerin Jacob | # | Items | Value | Comments | 450b3d4e665SJerin Jacob | | | | | 451b3d4e665SJerin Jacob +===+==============+================+=========================================+ 452b3d4e665SJerin Jacob | 1 | nb_queues | nb_producers | Queues will be configured based on the | 453b3d4e665SJerin Jacob | | | | user requested sched type list(--stlist)| 454b3d4e665SJerin Jacob +---+--------------+----------------+-----------------------------------------+ 455b3d4e665SJerin Jacob | 2 | nb_producers | >= 1 | Selected through --plcores command line | 456b3d4e665SJerin Jacob | | | | argument. | 457b3d4e665SJerin Jacob +---+--------------+----------------+-----------------------------------------+ 458b3d4e665SJerin Jacob | 3 | nb_workers | >= 1 | Selected through --wlcores command line | 459b3d4e665SJerin Jacob | | | | argument | 460b3d4e665SJerin Jacob +---+--------------+----------------+-----------------------------------------+ 461b3d4e665SJerin Jacob | 4 | nb_ports | nb_workers + | Workers use port 0 to port n-1. | 462b3d4e665SJerin Jacob | | | nb_producers | Producers use port n to port p | 463b3d4e665SJerin Jacob +---+--------------+----------------+-----------------------------------------+ 464b3d4e665SJerin Jacob 465b3d4e665SJerin Jacob.. _figure_eventdev_perf_atq_test: 466b3d4e665SJerin Jacob 467b3d4e665SJerin Jacob.. figure:: img/eventdev_perf_atq_test.* 468b3d4e665SJerin Jacob 469b3d4e665SJerin Jacob perf all types queue test operation. 470b3d4e665SJerin Jacob 471b3d4e665SJerin Jacob 472b3d4e665SJerin JacobThe ``all types queues(atq)`` perf test configures the eventdev with Q queues 473b3d4e665SJerin Jacoband P ports, where Q and P is a function of the number of workers and number of 474b3d4e665SJerin Jacobproducers as mentioned in :numref:`table_eventdev_perf_atq_test`. 475b3d4e665SJerin Jacob 476b3d4e665SJerin Jacob 477b3d4e665SJerin JacobThe atq queue test functions as same as ``perf_queue`` test. The difference 478b3d4e665SJerin Jacobis, It uses, ``all type queue scheme`` instead of separate queues for each 479b3d4e665SJerin Jacobstage and thus reduces the number of queues required to realize the use case 480b3d4e665SJerin Jacoband enables flow pinning as the event does not move to the next queue. 481b3d4e665SJerin Jacob 482b3d4e665SJerin Jacob 483b3d4e665SJerin JacobApplication options 484b3d4e665SJerin Jacob^^^^^^^^^^^^^^^^^^^ 485b3d4e665SJerin Jacob 486b3d4e665SJerin JacobSupported application command line options are following:: 487b3d4e665SJerin Jacob 488b3d4e665SJerin Jacob --verbose 489b3d4e665SJerin Jacob --dev 490b3d4e665SJerin Jacob --test 491b3d4e665SJerin Jacob --socket_id 492b3d4e665SJerin Jacob --pool_sz 493b3d4e665SJerin Jacob --plcores 494b3d4e665SJerin Jacob --wlcores 495b3d4e665SJerin Jacob --stlist 496b3d4e665SJerin Jacob --nb_flows 497b3d4e665SJerin Jacob --nb_pkts 498b3d4e665SJerin Jacob --worker_deq_depth 499b3d4e665SJerin Jacob --fwd_latency 500b01974daSPavan Nikhilesh --prod_type_ethdev 50117b22d0bSPavan Nikhilesh --prod_type_timerdev_burst 502d008f20bSPavan Nikhilesh --prod_type_timerdev 50398c62921SPavan Nikhilesh --timer_tick_nsec 50498c62921SPavan Nikhilesh --max_tmo_nsec 50598c62921SPavan Nikhilesh --expiry_nsec 50698c62921SPavan Nikhilesh --nb_timers 50798c62921SPavan Nikhilesh --nb_timer_adptrs 508f0959283SPavan Nikhilesh --deq_tmo_nsec 509b3d4e665SJerin Jacob 510b3d4e665SJerin JacobExample 511b3d4e665SJerin Jacob^^^^^^^ 512b3d4e665SJerin Jacob 513b3d4e665SJerin JacobExample command to run perf ``all types queue`` test: 514b3d4e665SJerin Jacob 515b3d4e665SJerin Jacob.. code-block:: console 516b3d4e665SJerin Jacob 517b3d4e665SJerin Jacob sudo build/app/dpdk-test-eventdev --vdev=event_octeontx -- \ 518b3d4e665SJerin Jacob --test=perf_atq --plcores=2 --wlcore=3 --stlist=p --nb_pkts=0 519ba9de463SPavan Nikhilesh 520d008f20bSPavan NikhileshExample command to run perf ``all types queue`` test with event timer adapter: 521d008f20bSPavan Nikhilesh 522d008f20bSPavan Nikhilesh.. code-block:: console 523d008f20bSPavan Nikhilesh 524d008f20bSPavan Nikhilesh sudo build/app/dpdk-test-eventdev --vdev="event_octeontx" -- \ 525d008f20bSPavan Nikhilesh --wlcores 4 --plcores 12 --test perf_atq --verbose 20 \ 526d008f20bSPavan Nikhilesh --stlist=a --prod_type_timerdev --fwd_latency 527d008f20bSPavan Nikhilesh 528ba9de463SPavan Nikhilesh 529ba9de463SPavan NikhileshPIPELINE_QUEUE Test 530ba9de463SPavan Nikhilesh~~~~~~~~~~~~~~~~~~~ 531ba9de463SPavan Nikhilesh 532ba9de463SPavan NikhileshThis is a pipeline test case that aims at testing the following: 533ba9de463SPavan Nikhilesh 534ba9de463SPavan Nikhilesh#. Measure the end-to-end performance of an event dev with a ethernet dev. 535ba9de463SPavan Nikhilesh#. Maintain packet ordering from Rx to Tx. 536ba9de463SPavan Nikhilesh 537ba9de463SPavan Nikhilesh.. _table_eventdev_pipeline_queue_test: 538ba9de463SPavan Nikhilesh 539ba9de463SPavan Nikhilesh.. table:: Pipeline queue test eventdev configuration. 540ba9de463SPavan Nikhilesh 541ba9de463SPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 542ba9de463SPavan Nikhilesh | # | Items | Value | Comments | 543ba9de463SPavan Nikhilesh | | | | | 544ba9de463SPavan Nikhilesh +===+==============+================+=========================================+ 545ba9de463SPavan Nikhilesh | 1 | nb_queues | (nb_producers | Queues will be configured based on the | 546ba9de463SPavan Nikhilesh | | | * nb_stages) + | user requested sched type list(--stlist)| 547a4f56123SPavan Nikhilesh | | | nb_producers | At the last stage of the schedule list | 548a4f56123SPavan Nikhilesh | | | | the event is enqueued onto per port | 549a4f56123SPavan Nikhilesh | | | | unique queue which is then Transmitted. | 550ba9de463SPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 551ba9de463SPavan Nikhilesh | 2 | nb_producers | >= 1 | Producers will be configured based on | 552ba9de463SPavan Nikhilesh | | | | the number of detected ethernet devices.| 553ba9de463SPavan Nikhilesh | | | | Each ethdev will be configured as an Rx | 554ba9de463SPavan Nikhilesh | | | | adapter. | 555ba9de463SPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 556ba9de463SPavan Nikhilesh | 3 | nb_workers | >= 1 | Selected through --wlcores command line | 557ba9de463SPavan Nikhilesh | | | | argument | 558ba9de463SPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 559ba9de463SPavan Nikhilesh | 4 | nb_ports | nb_workers + | Workers use port 0 to port n. | 560a4f56123SPavan Nikhilesh | | | (nb_produces * | Producers use port n+1 to port n+m, | 561a4f56123SPavan Nikhilesh | | | 2) | depending on the Rx adapter capability. | 562a4f56123SPavan Nikhilesh | | | | Consumers use port n+m+1 to port n+o | 563a4f56123SPavan Nikhilesh | | | | depending on the Tx adapter capability. | 564ba9de463SPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 565ba9de463SPavan Nikhilesh 566ba9de463SPavan Nikhilesh.. _figure_eventdev_pipeline_queue_test_generic: 567ba9de463SPavan Nikhilesh 568ba9de463SPavan Nikhilesh.. figure:: img/eventdev_pipeline_queue_test_generic.* 569ba9de463SPavan Nikhilesh 570a4f56123SPavan Nikhilesh.. _figure_eventdev_pipeline_queue_test_internal_port: 571ba9de463SPavan Nikhilesh 572a4f56123SPavan Nikhilesh.. figure:: img/eventdev_pipeline_queue_test_internal_port.* 573ba9de463SPavan Nikhilesh 574ba9de463SPavan Nikhilesh pipeline queue test operation. 575ba9de463SPavan Nikhilesh 576ba9de463SPavan NikhileshThe pipeline queue test configures the eventdev with Q queues and P ports, 577ba9de463SPavan Nikhileshwhere Q and P is a function of the number of workers, the number of producers 578ba9de463SPavan Nikhileshand number of stages as mentioned in :numref:`table_eventdev_pipeline_queue_test`. 579ba9de463SPavan Nikhilesh 580ba9de463SPavan NikhileshThe user can choose the number of workers and number of stages through the 581ba9de463SPavan Nikhilesh``--wlcores`` and the ``--stlist`` application command line arguments 582ba9de463SPavan Nikhileshrespectively. 583ba9de463SPavan Nikhilesh 584ba9de463SPavan NikhileshThe number of producers depends on the number of ethernet devices detected and 585ba9de463SPavan Nikhilesheach ethernet device is configured as a event_eth_rx_adapter that acts as a 586ba9de463SPavan Nikhileshproducer. 587ba9de463SPavan Nikhilesh 588ba9de463SPavan NikhileshThe producer(s) injects the events to eventdev based the first stage sched type 589ba9de463SPavan Nikhileshlist requested by the user through ``--stlist`` the command line argument. 590ba9de463SPavan Nikhilesh 591ba9de463SPavan NikhileshBased on the number of stages to process(selected through ``--stlist``), 592ba9de463SPavan NikhileshThe application forwards the event to next upstream queue and when it reaches 593ba9de463SPavan Nikhileshthe last stage in the pipeline if the event type is ``atomic`` it is enqueued 594ba9de463SPavan Nikhileshonto ethdev Tx queue else to maintain ordering the event type is set to 595ba9de463SPavan Nikhilesh``atomic`` and enqueued onto the last stage queue. 596ba9de463SPavan Nikhilesh 597a4f56123SPavan NikhileshIf the ethdev and eventdev pair have ``RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT`` 598a4f56123SPavan Nikhileshcapability then the worker cores enqueue the packets to the eventdev directly 599a4f56123SPavan Nikhileshusing ``rte_event_eth_tx_adapter_enqueue`` else the worker cores enqueue the 600a4f56123SPavan Nikhileshpacket onto the ``SINGLE_LINK_QUEUE`` that is managed by the Tx adapter. 601a4f56123SPavan NikhileshThe Tx adapter dequeues the packet and transmits it. 602ba9de463SPavan Nikhilesh 603ba9de463SPavan NikhileshOn packet Tx, application increments the number events processed and print 604ba9de463SPavan Nikhileshperiodically in one second to get the number of events processed in one 605ba9de463SPavan Nikhileshsecond. 606ba9de463SPavan Nikhilesh 607ba9de463SPavan Nikhilesh 608ba9de463SPavan NikhileshApplication options 609ba9de463SPavan Nikhilesh^^^^^^^^^^^^^^^^^^^ 610ba9de463SPavan Nikhilesh 611ba9de463SPavan NikhileshSupported application command line options are following:: 612ba9de463SPavan Nikhilesh 613ba9de463SPavan Nikhilesh --verbose 614ba9de463SPavan Nikhilesh --dev 615ba9de463SPavan Nikhilesh --test 616ba9de463SPavan Nikhilesh --socket_id 617ba9de463SPavan Nikhilesh --pool_sz 618ba9de463SPavan Nikhilesh --wlcores 619ba9de463SPavan Nikhilesh --stlist 620ba9de463SPavan Nikhilesh --worker_deq_depth 621ba9de463SPavan Nikhilesh --prod_type_ethdev 622f0959283SPavan Nikhilesh --deq_tmo_nsec 623ba9de463SPavan Nikhilesh 624ba9de463SPavan Nikhilesh 625ba9de463SPavan Nikhilesh.. Note:: 626ba9de463SPavan Nikhilesh 627ba9de463SPavan Nikhilesh * The ``--prod_type_ethdev`` is mandatory for running this test. 628ba9de463SPavan Nikhilesh 629ba9de463SPavan NikhileshExample 630ba9de463SPavan Nikhilesh^^^^^^^ 631ba9de463SPavan Nikhilesh 632ba9de463SPavan NikhileshExample command to run pipeline queue test: 633ba9de463SPavan Nikhilesh 634ba9de463SPavan Nikhilesh.. code-block:: console 635ba9de463SPavan Nikhilesh 636ba9de463SPavan Nikhilesh sudo build/app/dpdk-test-eventdev -c 0xf -s 0x8 --vdev=event_sw0 -- \ 637ba9de463SPavan Nikhilesh --test=pipeline_queue --wlcore=1 --prod_type_ethdev --stlist=a 638d1b46dafSPavan Nikhilesh 639d1b46dafSPavan Nikhilesh 640d1b46dafSPavan NikhileshPIPELINE_ATQ Test 641d1b46dafSPavan Nikhilesh~~~~~~~~~~~~~~~~~~~ 642d1b46dafSPavan Nikhilesh 643d1b46dafSPavan NikhileshThis is a pipeline test case that aims at testing the following with 644d1b46dafSPavan Nikhilesh``all types queue`` eventdev scheme. 645d1b46dafSPavan Nikhilesh 646d1b46dafSPavan Nikhilesh#. Measure the end-to-end performance of an event dev with a ethernet dev. 647d1b46dafSPavan Nikhilesh#. Maintain packet ordering from Rx to Tx. 648d1b46dafSPavan Nikhilesh 649d1b46dafSPavan Nikhilesh.. _table_eventdev_pipeline_atq_test: 650d1b46dafSPavan Nikhilesh 651d1b46dafSPavan Nikhilesh.. table:: Pipeline atq test eventdev configuration. 652d1b46dafSPavan Nikhilesh 653d1b46dafSPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 654d1b46dafSPavan Nikhilesh | # | Items | Value | Comments | 655d1b46dafSPavan Nikhilesh | | | | | 656d1b46dafSPavan Nikhilesh +===+==============+================+=========================================+ 657d1b46dafSPavan Nikhilesh | 1 | nb_queues | nb_producers + | Queues will be configured based on the | 658d1b46dafSPavan Nikhilesh | | | x | user requested sched type list(--stlist)| 659a4f56123SPavan Nikhilesh | | | | where x = nb_producers in generic | 660a4f56123SPavan Nikhilesh | | | | pipeline and 0 if all the ethdev | 661a4f56123SPavan Nikhilesh | | | | being used have Internal port capability| 662d1b46dafSPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 663d1b46dafSPavan Nikhilesh | 2 | nb_producers | >= 1 | Producers will be configured based on | 664d1b46dafSPavan Nikhilesh | | | | the number of detected ethernet devices.| 665d1b46dafSPavan Nikhilesh | | | | Each ethdev will be configured as an Rx | 666d1b46dafSPavan Nikhilesh | | | | adapter. | 667d1b46dafSPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 668d1b46dafSPavan Nikhilesh | 3 | nb_workers | >= 1 | Selected through --wlcores command line | 669d1b46dafSPavan Nikhilesh | | | | argument | 670d1b46dafSPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 671d1b46dafSPavan Nikhilesh | 4 | nb_ports | nb_workers + | Workers use port 0 to port n. | 672a4f56123SPavan Nikhilesh | | | nb_producers + | Producers use port n+1 to port n+m, | 673a4f56123SPavan Nikhilesh | | | x | depending on the Rx adapter capability. | 674a4f56123SPavan Nikhilesh | | | | x = nb_producers in generic pipeline and| 675a4f56123SPavan Nikhilesh | | | | 0 if all the ethdev being used have | 676a4f56123SPavan Nikhilesh | | | | Internal port capability. | 677a4f56123SPavan Nikhilesh | | | | Consumers may use port n+m+1 to port n+o| 678a4f56123SPavan Nikhilesh | | | | depending on the Tx adapter capability. | 679d1b46dafSPavan Nikhilesh +---+--------------+----------------+-----------------------------------------+ 680d1b46dafSPavan Nikhilesh 681d1b46dafSPavan Nikhilesh.. _figure_eventdev_pipeline_atq_test_generic: 682d1b46dafSPavan Nikhilesh 683d1b46dafSPavan Nikhilesh.. figure:: img/eventdev_pipeline_atq_test_generic.* 684d1b46dafSPavan Nikhilesh 685a4f56123SPavan Nikhilesh.. _figure_eventdev_pipeline_atq_test_internal_port: 686d1b46dafSPavan Nikhilesh 687a4f56123SPavan Nikhilesh.. figure:: img/eventdev_pipeline_atq_test_internal_port.* 688d1b46dafSPavan Nikhilesh 689d1b46dafSPavan Nikhilesh pipeline atq test operation. 690d1b46dafSPavan Nikhilesh 691d1b46dafSPavan NikhileshThe pipeline atq test configures the eventdev with Q queues and P ports, 692d1b46dafSPavan Nikhileshwhere Q and P is a function of the number of workers, the number of producers 693d1b46dafSPavan Nikhileshand number of stages as mentioned in :numref:`table_eventdev_pipeline_atq_test`. 694d1b46dafSPavan Nikhilesh 695d1b46dafSPavan NikhileshThe atq queue test functions as same as ``pipeline_queue`` test. The difference 696d1b46dafSPavan Nikhileshis, It uses, ``all type queue scheme`` instead of separate queues for each 697d1b46dafSPavan Nikhileshstage and thus reduces the number of queues required to realize the use case. 698d1b46dafSPavan Nikhilesh 699d1b46dafSPavan Nikhilesh 700d1b46dafSPavan NikhileshApplication options 701d1b46dafSPavan Nikhilesh^^^^^^^^^^^^^^^^^^^ 702d1b46dafSPavan Nikhilesh 703d1b46dafSPavan NikhileshSupported application command line options are following:: 704d1b46dafSPavan Nikhilesh 705d1b46dafSPavan Nikhilesh --verbose 706d1b46dafSPavan Nikhilesh --dev 707d1b46dafSPavan Nikhilesh --test 708d1b46dafSPavan Nikhilesh --socket_id 709d1b46dafSPavan Nikhilesh --pool_sz 710d1b46dafSPavan Nikhilesh --wlcores 711d1b46dafSPavan Nikhilesh --stlist 712d1b46dafSPavan Nikhilesh --worker_deq_depth 713d1b46dafSPavan Nikhilesh --prod_type_ethdev 714f0959283SPavan Nikhilesh --deq_tmo_nsec 715d1b46dafSPavan Nikhilesh 716d1b46dafSPavan Nikhilesh 717d1b46dafSPavan Nikhilesh.. Note:: 718d1b46dafSPavan Nikhilesh 719d1b46dafSPavan Nikhilesh * The ``--prod_type_ethdev`` is mandatory for running this test. 720d1b46dafSPavan Nikhilesh 721d1b46dafSPavan NikhileshExample 722d1b46dafSPavan Nikhilesh^^^^^^^ 723d1b46dafSPavan Nikhilesh 724d1b46dafSPavan NikhileshExample command to run pipeline queue test: 725d1b46dafSPavan Nikhilesh 726d1b46dafSPavan Nikhilesh.. code-block:: console 727d1b46dafSPavan Nikhilesh 728d1b46dafSPavan Nikhilesh sudo build/app/dpdk-test-eventdev -c 0xf -s 0x8 --vdev=event_sw0 -- \ 729d1b46dafSPavan Nikhilesh --test=pipeline_atq --wlcore=1 --prod_type_ethdev --stlist=a 730