|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1 |
|
| #
7be78d02 |
| 29-Nov-2021 |
Josh Soref <[email protected]> |
fix spelling in comments and strings
The tool comes from https://github.com/jsoref
Signed-off-by: Josh Soref <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
|
|
Revision tags: v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1, v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1, v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1 |
|
| #
324b37e6 |
| 08-Mar-2021 |
Harry van Haaren <[email protected]> |
event/sw: add xstats to expose progress details
Today it is difficult to know if the SW Eventdev PMD is making forward progress when it runs an iteration of its service. This commit adds two xstats
event/sw: add xstats to expose progress details
Today it is difficult to know if the SW Eventdev PMD is making forward progress when it runs an iteration of its service. This commit adds two xstats to give better visibility to the application.
The new xstats provide an application with which Eventdev ports received work in the last iteration of scheduling, as well if forward progress was made by the scheduler.
This patch implements an xstat for the SW PMD that exposes a bitmask of ports that were scheduled to. In the unlikely case that the SW PMD instance has 64 or more ports, return UINT64_MAX.
Signed-off-by: Harry van Haaren <[email protected]>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2 |
|
| #
25187042 |
| 29-Jan-2021 |
Bruce Richardson <[email protected]> |
eventdev: make driver-only headers private
The rte_eventdev_pmd*.h files are for drivers only and should be private to DPDK, and not installed for app use.
Signed-off-by: Bruce Richardson <bruce.ri
eventdev: make driver-only headers private
The rte_eventdev_pmd*.h files are for drivers only and should be private to DPDK, and not installed for app use.
Signed-off-by: Bruce Richardson <[email protected]>
show more ...
|
|
Revision tags: v21.02-rc1, v20.11, v20.11-rc5, v20.11-rc4, v20.11-rc3, v20.11-rc2, v20.11-rc1 |
|
| #
70207f35 |
| 07-Oct-2020 |
Radu Nicolau <[email protected]> |
event/sw: improve performance
Add minimum burst throughout the scheduler pipeline and a flush counter. Use a single threaded ring implementation for the reorder buffer free list.
Signed-off-by: Rad
event/sw: improve performance
Add minimum burst throughout the scheduler pipeline and a flush counter. Use a single threaded ring implementation for the reorder buffer free list.
Signed-off-by: Radu Nicolau <[email protected]> Acked-by: Harry van Haaren <[email protected]>
show more ...
|
|
Revision tags: v20.08, v20.08-rc4, v20.08-rc3, v20.08-rc2, v20.08-rc1, v20.05, v20.05-rc4, v20.05-rc3, v20.05-rc2, v20.05-rc1, v20.02, v20.02-rc4, v20.02-rc3, v20.02-rc2, v20.02-rc1, v19.11, v19.11-rc4, v19.11-rc3, v19.11-rc2, v19.11-rc1, v19.08, v19.08-rc4, v19.08-rc3, v19.08-rc2, v19.08-rc1, v19.05, v19.05-rc4, v19.05-rc3, v19.05-rc2, v19.05-rc1, v19.02, v19.02-rc4, v19.02-rc3, v19.02-rc2, v19.02-rc1, v18.11, v18.11-rc5, v18.11-rc4, v18.11-rc3, v18.11-rc2, v18.11-rc1 |
|
| #
bd5ac24f |
| 24-Sep-2018 |
Harry van Haaren <[email protected]> |
event/sw: implement unlinks in progress function
This commit adds a counter to each port, which counts the number of unlinks that have been performed. When the scheduler thread starts its scheduling
event/sw: implement unlinks in progress function
This commit adds a counter to each port, which counts the number of unlinks that have been performed. When the scheduler thread starts its scheduling routine, it "acks" all unlinks that have been requested, and the application is gauranteed that no more events will be scheduled to the port from the unlinked queue.
Signed-off-by: Harry van Haaren <[email protected]>
show more ...
|
|
Revision tags: v18.08, v18.08-rc3, v18.08-rc2, v18.08-rc1, v18.05, v18.05-rc6, v18.05-rc5, v18.05-rc4, v18.05-rc3, v18.05-rc2, v18.05-rc1, v18.02, v18.02-rc4, v18.02-rc3, v18.02-rc2 |
|
| #
510ac6f4 |
| 25-Jan-2018 |
Harry van Haaren <[email protected]> |
event/sw: support dynamic logging
This commit enables dynamic logging with the SW pmd. The string "pmd.event.sw" is used to change the verbosity of the logging output, as per the newly defined log n
event/sw: support dynamic logging
This commit enables dynamic logging with the SW pmd. The string "pmd.event.sw" is used to change the verbosity of the logging output, as per the newly defined log naming.
Signed-off-by: Harry van Haaren <[email protected]>
show more ...
|
|
Revision tags: v18.02-rc1 |
|
| #
5b118e89 |
| 19-Jan-2018 |
Jerin Jacob <[email protected]> |
event/sw: fix debug logging config option
align the config option name with config/common_base
Fixes: aaa4a221da26 ("event/sw: add new software-only eventdev driver") Cc: [email protected]
Signed-of
event/sw: fix debug logging config option
align the config option name with config/common_base
Fixes: aaa4a221da26 ("event/sw: add new software-only eventdev driver") Cc: [email protected]
Signed-off-by: Jerin Jacob <[email protected]> Acked-by: Harry van Haaren <[email protected]>
show more ...
|
| #
561c5c7b |
| 11-Jan-2018 |
Pavan Nikhilesh <[email protected]> |
event/sw: update selftest ops
Update software eventdev ops to invoke selftest when application invokes `rte_event_dev_selftest`.
Signed-off-by: Pavan Nikhilesh <[email protected]> Ack
event/sw: update selftest ops
Update software eventdev ops to invoke selftest when application invokes `rte_event_dev_selftest`.
Signed-off-by: Pavan Nikhilesh <[email protected]> Acked-by: Harry van Haaren <[email protected]>
show more ...
|
| #
ec36d881 |
| 11-Dec-2017 |
Gage Eads <[email protected]> |
eventdev: add implicit release disable capability
This commit introduces a capability for disabling the "implicit" release functionality for a port, which prevents the eventdev PMD from issuing outs
eventdev: add implicit release disable capability
This commit introduces a capability for disabling the "implicit" release functionality for a port, which prevents the eventdev PMD from issuing outstanding releases for previously dequeued events when dequeuing a new batch of events.
If a PMD does not support this capability, the application will receive an error if it attempts to setup a port with implicit releases disabled. Otherwise, if the port is configured with implicit releases disabled, the application must release each dequeued event by invoking rte_event_enqueue_burst() with RTE_EVENT_OP_RELEASE or RTE_EVENT_OP_FORWARD.
Signed-off-by: Gage Eads <[email protected]> Acked-by: Harry van Haaren <[email protected]>
show more ...
|
| #
dca926ca |
| 30-Nov-2017 |
Gage Eads <[email protected]> |
event/sw: use dynamically-sized IQs
This commit introduces dynamically-sized IQs, by switching the underlying data structure from a fixed-size ring to a linked list of queue 'chunks.' This has a num
event/sw: use dynamically-sized IQs
This commit introduces dynamically-sized IQs, by switching the underlying data structure from a fixed-size ring to a linked list of queue 'chunks.' This has a number of benefits: - Certain corner cases were observed in which all of a pipeline's flows could be pinned to one port for extended periods, effectively turning a multi-core pipeline into single-core one. This was caused by an event producer having a larger new_event_threshold than the IQ depth, and injecting large numbers of packets that are ultimately backpressured in a worker's rx_ring, causing those packets' flows to be scheduled to that port. The dynamically sized IQ does not have this problem because each IQ can grow large enough to store all the system's events, such that backpressure will not reach the worker_ring. - Slight performance improvement (~1-2%) in high throughput scenarios, tested with eventdev_pipeline_sw_pmd.
This implementation has a small increase in the queue storage memory footprint (~70KB). This commit also removes the iq_size xstat, which no longer applies to this implementation.
Signed-off-by: Gage Eads <[email protected]> Acked-by: Harry van Haaren <[email protected]>
show more ...
|
| #
5566a3e3 |
| 19-Dec-2017 |
Bruce Richardson <[email protected]> |
drivers: use SPDX tag for Intel copyright files
Replace the BSD license header with the SPDX tag for files with only an Intel copyright on them.
Signed-off-by: Bruce Richardson <bruce.richardson@in
drivers: use SPDX tag for Intel copyright files
Replace the BSD license header with the SPDX tag for files with only an Intel copyright on them.
Signed-off-by: Bruce Richardson <[email protected]>
show more ...
|
|
Revision tags: v17.11, v17.11-rc4, v17.11-rc3, v17.11-rc2, v17.11-rc1 |
|
| #
a894d481 |
| 21-Aug-2017 |
Harry van Haaren <[email protected]> |
service: return integer service id from register
This commit reworks the service register function to accept an extra parameter. The parameter is a uint32_t *, which when provided will be set to the
service: return integer service id from register
This commit reworks the service register function to accept an extra parameter. The parameter is a uint32_t *, which when provided will be set to the integer service_id that the newly registered service is represented by.
This is useful for services that wish to validate settings at a later point in time - they need to know their own service id.
This commit updates the eventdev sw pmd, as well as unit tests to use the new register API.
Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Pavan Nikhilesh <[email protected]>
show more ...
|
|
Revision tags: v17.08, v17.08-rc4, v17.08-rc3, v17.08-rc2 |
|
| #
a599eb31 |
| 11-Jul-2017 |
Harry van Haaren <[email protected]> |
event/sw: add service capability
This commit shows how easy it is to enable a specific DPDK component with a service callback, in order to get CPU cycles for it.
The beauty of this method is that t
event/sw: add service capability
This commit shows how easy it is to enable a specific DPDK component with a service callback, in order to get CPU cycles for it.
The beauty of this method is that the service is unaware of how much CPU time it is getting - the application can decide how to split and slice cores and map them to the registered services.
Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
|
Revision tags: v17.08-rc1 |
|
| #
86aed50a |
| 30-Jun-2017 |
Bruce Richardson <[email protected]> |
event/sw: change worker rings to standard event rings
Now that we have a standard event ring implementation for passing events core-to-core, use that in place of the custom event rings in the softwa
event/sw: change worker rings to standard event rings
Now that we have a standard event ring implementation for passing events core-to-core, use that in place of the custom event rings in the software eventdev.
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Harry van Haaren <[email protected]>
show more ...
|
| #
b1b3d9f9 |
| 09-Jun-2017 |
Jerin Jacob <[email protected]> |
eventdev: make vdev init and uninit functions optional
Made libeventdev library independent of VDEV bus by moving vdev pmd specific function to rte_eventdev_pmd_vdev.h header file. Eventdev VDEV PMD
eventdev: make vdev init and uninit functions optional
Made libeventdev library independent of VDEV bus by moving vdev pmd specific function to rte_eventdev_pmd_vdev.h header file. Eventdev VDEV PMD can include that for generic eventdev VDEV init and uninit function enablement.
Signed-off-by: Jerin Jacob <[email protected]>
show more ...
|
| #
0e1eadd0 |
| 11-May-2017 |
Harry van Haaren <[email protected]> |
event/sw: add queue-to-port stats
This commit adds a new statistic to the SW eventdev PMD. The statistic shows how many packets were sent from a queue to a port. This provides information on how tra
event/sw: add queue-to-port stats
This commit adds a new statistic to the SW eventdev PMD. The statistic shows how many packets were sent from a queue to a port. This provides information on how traffic from a specific queue is being load-balanced to worker cores.
Note that these numbers should be compared across all queue stages - the load-balancing does not try to perfectly share each queue's traffic, rather it balances the overall traffic from all queues to the ports.
The statistic is printed from the rte_eventdev_dump() function, as well as being made available via the xstats API.
Unit tests have been updated to expect more per-queue statistics, and the correctness of counts and counts after reset is verified.
Signed-off-by: Harry van Haaren <[email protected]>
show more ...
|
|
Revision tags: v17.05, v17.05-rc4, v17.05-rc3, v17.05-rc2, v17.05-rc1 |
|
| #
c1ad03df |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: support xstats
Add support for xstats to report out on the state of the eventdev. Useful for debugging and for unit tests, as well as observability at runtime and performance tuning of app
event/sw: support xstats
Add support for xstats to report out on the state of the eventdev. Useful for debugging and for unit tests, as well as observability at runtime and performance tuning of apps to work well with the scheduler.
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: David Hunt <[email protected]>
show more ...
|
| #
617995df |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: add scheduling logic
Add in the scheduling function which takes the events from the producer queues and buffers them before scheduling them to consumer queues. The scheduling logic include
event/sw: add scheduling logic
Add in the scheduling function which takes the events from the producer queues and buffers them before scheduling them to consumer queues. The scheduling logic includes support for atomic, reordered, and parallel scheduling of flows.
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Gage Eads <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: David Hunt <[email protected]>
show more ...
|
| #
656af918 |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: add worker core functions
add the event enqueue, dequeue and release functions to the eventdev. These also include tracking of stats for observability in the load of the scheduler. Interna
event/sw: add worker core functions
add the event enqueue, dequeue and release functions to the eventdev. These also include tracking of stats for observability in the load of the scheduler. Internally in the enqueue function, the various types of enqueue operations, to forward an existing event, to send a new event, to drop a previous event, are converted to a series of flags which will be used by the scheduler code to perform the needed actions for that event.
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Gage Eads <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| #
98dc055f |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: support event ports
Add in the data-structures for the ports used by workers to send packets to/from the scheduler. Also add in the functions to create/destroy those ports.
Signed-off-by:
event/sw: support event ports
Add in the data-structures for the ports used by workers to send packets to/from the scheduler. Also add in the functions to create/destroy those ports.
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| #
5ffb2f14 |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: support event queues
Add in the data structures for the event queues, and the eventdev functions to create and destroy those queues.
Signed-off-by: Bruce Richardson <bruce.richardson@inte
event/sw: support event queues
Add in the data structures for the event queues, and the eventdev functions to create and destroy those queues.
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| #
1c6c0e4c |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: add configure function
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <jerin.jacob@caviumne
event/sw: add configure function
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|
| #
aaa4a221 |
| 30-Mar-2017 |
Bruce Richardson <[email protected]> |
event/sw: add new software-only eventdev driver
This adds the minimal changes to allow a SW eventdev implementation to be compiled, linked and created at run time. The eventdev does nothing, but can
event/sw: add new software-only eventdev driver
This adds the minimal changes to allow a SW eventdev implementation to be compiled, linked and created at run time. The eventdev does nothing, but can be created via vdev on commandline, e.g.
sudo ./x86_64-native-linuxapp-gcc/app/test --vdev=event_sw0 ... PMD: Creating eventdev sw device event_sw0, numa_node=0, sched_quanta=128 RTE>>
Signed-off-by: Bruce Richardson <[email protected]> Signed-off-by: Harry van Haaren <[email protected]> Acked-by: Jerin Jacob <[email protected]>
show more ...
|