xref: /dpdk/doc/guides/tools/testeventdev.rst (revision fc8b96fbc060ad72d5f1d555ae9c4eac93669d5c)
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