[RFC] eventdev: remove single-event enqueue operation
Jerin Jacob
jerinjacobk at gmail.com
Fri Jun 30 06:37:25 CEST 2023
On Fri, Jun 9, 2023 at 11:18 PM Mattias Rönnblom
<mattias.ronnblom at ericsson.com> wrote:
>
> Eliminate non-burst enqueue operation from Eventdev.
>
> The effect of this change is to reduce Eventdev code complexity
> somewhat and slightly improve performance.
>
> The single-event enqueue shortcut provided a very minor performance
> advantage in some situations (e.g., with a compile time-constant burst
> size of '1'), but would in other situations cause a noticeable
> performance penalty (e.g., rte_event_enqueue_forward_burst() with run
> time-variable burst sizes varying between '1' and larger burst sizes).
>
> Signed-off-by: Mattias Rönnblom <mattias.ronnblom at ericsson.com>
>
> -typedef uint16_t (*event_enqueue_t)(void *port, const struct rte_event *ev);
> -/**< @internal Enqueue event on port of a device */
> -
> typedef uint16_t (*event_enqueue_burst_t)(void *port,
> const struct rte_event ev[],
> uint16_t nb_events);
> @@ -45,8 +42,6 @@ typedef uint16_t (*event_crypto_adapter_enqueue_t)(void *port,
> struct rte_event_fp_ops {
> void **data;
> /**< points to array of internal port data pointers */
> - event_enqueue_t enqueue;
> - /**< PMD enqueue function. */
Can we remove "dequeue" as well?
In any event, Please send a deprecation notice as it is an ABI change,
and we need to get merge the deprecation notice patch for v23.07.
I can review the deprecation notice patch quickly as soon as you send
it to make forward progress.
> event_enqueue_burst_t enqueue_burst;
> /**< PMD enqueue burst function. */
> event_enqueue_burst_t enqueue_new_burst;
> @@ -65,7 +60,7 @@ struct rte_event_fp_ops {
> /**< PMD Tx adapter enqueue same destination function. */
> event_crypto_adapter_enqueue_t ca_enqueue;
> /**< PMD Crypto adapter enqueue function. */
> - uintptr_t reserved[6];
> + uintptr_t reserved[7];
> } __rte_cache_aligned;
>
More information about the dev
mailing list