order_atq
perf_queue
perf_atq
+ pipeline_atq
+ pipeline_queue
* ``--socket_id <n>``
+===+==============+================+=========================================+
| 1 | nb_queues | (nb_producers | Queues will be configured based on the |
| | | * nb_stages) + | user requested sched type list(--stlist)|
- | | | x | Here value of x is 1 in generic pipeline|
- | | | | and nb_producers in lockfree pipeline |
+ | | | nb_producers | At the last stage of the schedule list |
+ | | | | the event is enqueued onto per port |
+ | | | | unique queue which is then Transmitted. |
+---+--------------+----------------+-----------------------------------------+
| 2 | nb_producers | >= 1 | Producers will be configured based on |
| | | | the number of detected ethernet devices.|
| | | | argument |
+---+--------------+----------------+-----------------------------------------+
| 4 | nb_ports | nb_workers + | Workers use port 0 to port n. |
- | | | nb_producers | Producers use port n+1 to port n+m, |
- | | | | depending on the Rx adapter capability. |
+ | | | (nb_produces * | Producers use port n+1 to port n+m, |
+ | | | 2) | depending on the Rx adapter capability. |
+ | | | | Consumers use port n+m+1 to port n+o |
+ | | | | depending on the Tx adapter capability. |
+---+--------------+----------------+-----------------------------------------+
.. _figure_eventdev_pipeline_queue_test_generic:
.. figure:: img/eventdev_pipeline_queue_test_generic.*
-.. _figure_eventdev_pipeline_queue_test_lockfree:
+.. _figure_eventdev_pipeline_queue_test_internal_port:
-.. figure:: img/eventdev_pipeline_queue_test_lockfree.*
+.. figure:: img/eventdev_pipeline_queue_test_internal_port.*
pipeline queue test operation.
onto ethdev Tx queue else to maintain ordering the event type is set to
``atomic`` and enqueued onto the last stage queue.
-If the ethernet has ``DEV_TX_OFFLOAD_MT_LOCKFREE`` capability then the worker
-cores transmit the packets directly. Else the worker cores enqueue the packet
-onto the ``SINGLE_LINK_QUEUE`` that is managed by a Tx service. The Tx service
-dequeues the packet and transmits it.
+If the ethdev and eventdev pair have ``RTE_EVENT_ETH_TX_ADAPTER_CAP_INTERNAL_PORT``
+capability then the worker cores enqueue the packets to the eventdev directly
+using ``rte_event_eth_tx_adapter_enqueue`` else the worker cores enqueue the
+packet onto the ``SINGLE_LINK_QUEUE`` that is managed by the Tx adapter.
+The Tx adapter dequeues the packet and transmits it.
On packet Tx, application increments the number events processed and print
periodically in one second to get the number of events processed in one
+===+==============+================+=========================================+
| 1 | nb_queues | nb_producers + | Queues will be configured based on the |
| | | x | user requested sched type list(--stlist)|
- | | | | where x = 1 in generic pipeline and 0 |
- | | | | in lockfree pipeline |
+ | | | | where x = nb_producers in generic |
+ | | | | pipeline and 0 if all the ethdev |
+ | | | | being used have Internal port capability|
+---+--------------+----------------+-----------------------------------------+
| 2 | nb_producers | >= 1 | Producers will be configured based on |
| | | | the number of detected ethernet devices.|
| | | | argument |
+---+--------------+----------------+-----------------------------------------+
| 4 | nb_ports | nb_workers + | Workers use port 0 to port n. |
- | | | nb_producers | Producers use port n+1 to port n+m, |
- | | | | depending on the Rx adapter capability. |
+ | | | nb_producers + | Producers use port n+1 to port n+m, |
+ | | | x | depending on the Rx adapter capability. |
+ | | | | x = nb_producers in generic pipeline and|
+ | | | | 0 if all the ethdev being used have |
+ | | | | Internal port capability. |
+ | | | | Consumers may use port n+m+1 to port n+o|
+ | | | | depending on the Tx adapter capability. |
+---+--------------+----------------+-----------------------------------------+
.. _figure_eventdev_pipeline_atq_test_generic:
.. figure:: img/eventdev_pipeline_atq_test_generic.*
-.. _figure_eventdev_pipeline_atq_test_lockfree:
+.. _figure_eventdev_pipeline_atq_test_internal_port:
-.. figure:: img/eventdev_pipeline_atq_test_lockfree.*
+.. figure:: img/eventdev_pipeline_atq_test_internal_port.*
pipeline atq test operation.