[dpdk-dev] RFC: Enahancements to Rx adapter for DPDK 21.11
Jerin Jacob
jerinjacobk at gmail.com
Fri Jul 30 13:17:43 CEST 2021
On Wed, Jul 28, 2021 at 11:53 AM Kundapura, Ganapati
<ganapati.kundapura at intel.com> wrote:
>
> Comments inlined
Please fix your email client for adding proper >
>
> -----Original Message-----
> From: Jerin Jacob <jerinjacobk at gmail.com>
> Sent: 28 July 2021 11:38
> To: Kundapura, Ganapati <ganapati.kundapura at intel.com>
> Cc: dpdk-dev <dev at dpdk.org>; Jayatheerthan, Jay <jay.jayatheerthan at intel.com>
> Subject: Re: RFC: Enahancements to Rx adapter for DPDK 21.11
>
> On Mon, Jul 26, 2021 at 6:37 PM Kundapura, Ganapati <ganapati.kundapura at intel.com> wrote:
> >
> > A gentle ping for comments.
> >
> > -----Original Message-----
> > From: dev <dev-bounces at dpdk.org> On Behalf Of Kundapura, Ganapati
> > Sent: 23 July 2021 12:33
> > To: dpdk-dev <dev at dpdk.org>; Jerin Jacob <jerinjacobk at gmail.com>;
> > Jayatheerthan, Jay <jay.jayatheerthan at intel.com>
> > Subject: [dpdk-dev] RFC: Enahancements to Rx adapter for DPDK 21.11
> >
> > Hi dpdk-dev,
> >
> > We would like to submit series of patches to Rx adapters that will enhance the configuration and performance.
> > Please find the details below.
> >
> > (1) Configure Rx event buffer at run time
> > Add new api to configure the size of the Rx event buffer at run time.
> > This api allows setting the size of the event buffer at adapter level.
>
> Since we can change ABI for 21.11, Not prefer to add a new API instead add a param to config structure.
> Please send the deprecation notice for ABI change.
>
> Config structure passed to rte_event_eth_rx_adapter_create() is of type rte_event_port_conf which
> comes from event framework(rte_eventdev.h).
> Does it make sense to pass adapter event buffer size in rte_event_port_conf structure?
I see. Then new API is better to set the buffer is OK.
>
> >
> > (2) Change packet enqueue buffer in Rx adapter to circular buffer
> > Rx adapter uses memmove() to move unprocessed events to the begining
> > of packet enqueue buffer which consumes good amount of CPU cycles.
>
> Looks good.
>
>
> >
> > (3) Add API to retrieve the Rx queue info
> > Rx queue info containinin flags for handling received packets,
> > event queue identifier, schedular type, event priority,
> > polling frequence of the receive queue and flow identifier
>
> Looks good. Please implement it as adaptor ops so that it can be adapter specific to support HW implementations.
>
>
>
> >
> > (4) Add adapter_stats cli to retrive Rx/Tx adapter stats and rxq info
> > This cli displays Rx and Tx adapter stats containing recieved packet count,
> > eventdev enqueue count, enqueue retry count, event buffer size, queue poll count,
> > transmitted packet count, packet dropped count, transmit fail count etc and rx queue info.
>
> Generally, we don't entertain CLI in the library. You can add command-line arguments to app/test-eventdev to test this.
>
> Adapter_stats is standalone application not part of library and it'll be in app/adapter_stats.
No need for a new app. Please add stats as telemetry, then it can be
pull through
usertools/dpdk-telemetry.py
> >
> > (5) Update Rx timestamp in mbuf using mbuf dynamic field
> > Add support to register timestamp dynamic field in mbuf
> > Update the timestamp in mbuf for each packet before eventdev
> > enqueue
>
> Cool.
>
> >
> > We look forward to feedback on this proposal. Once we have initial feedback, patches will be submitted for review.
> >
> > Thanks,
> > Ganapati
More information about the dev
mailing list