[RFC] eventdev: remove single-event enqueue operation
Mattias Rönnblom
hofors at lysator.liu.se
Tue Jul 4 14:01:47 CEST 2023
On 2023-06-30 06:37, Jerin Jacob wrote:
> 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?
Seems likely, but I have no data on that option.
> 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.
>
OK.
>
>> 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