History log of /dpdk/drivers/event/sw/sw_evdev.h (Results 1 – 23 of 23)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
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 ...