[dpdk-dev] [PATCH v2 04/11] examples/l3fwd: add ethdev setup based on eventdev

Jerin Jacob jerinjacobk at gmail.com
Fri Jan 3 10:09:57 CET 2020


On Fri, Jan 3, 2020 at 2:36 PM Nipun Gupta <nipun.gupta at nxp.com> wrote:
>
>
>
> > -----Original Message-----
> > From: Jerin Jacob <jerinjacobk at gmail.com>
> > Sent: Thursday, January 2, 2020 3:04 PM
> > To: Nipun Gupta <nipun.gupta at nxp.com>
> > Cc: Pavan Nikhilesh Bhagavatula <pbhagavatula at marvell.com>; Jerin Jacob
> > Kollanukkaran <jerinj at marvell.com>; Marko Kovacevic
> > <marko.kovacevic at intel.com>; Ori Kam <orika at mellanox.com>; Bruce
> > Richardson <bruce.richardson at intel.com>; Radu Nicolau
> > <radu.nicolau at intel.com>; Akhil Goyal <akhil.goyal at nxp.com>; Tomasz
> > Kantecki <tomasz.kantecki at intel.com>; Sunil Kumar Kori <skori at marvell.com>;
> > Hemant Agrawal <hemant.agrawal at nxp.com>; dev at dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH v2 04/11] examples/l3fwd: add ethdev setup
> > based on eventdev
> >
> > On Thu, Jan 2, 2020 at 2:20 PM Nipun Gupta <nipun.gupta at nxp.com> wrote:
> > >
> > >
> > >
> > > > -----Original Message-----
> > > > From: Pavan Nikhilesh Bhagavatula <pbhagavatula at marvell.com>
> > > > Sent: Thursday, January 2, 2020 11:52 AM
> > > > To: Nipun Gupta <nipun.gupta at nxp.com>; Jerin Jacob Kollanukkaran
> > > > <jerinj at marvell.com>; Marko Kovacevic <marko.kovacevic at intel.com>; Ori
> > > > Kam <orika at mellanox.com>; Bruce Richardson
> > > > <bruce.richardson at intel.com>; Radu Nicolau <radu.nicolau at intel.com>;
> > > > Akhil Goyal <akhil.goyal at nxp.com>; Tomasz Kantecki
> > > > <tomasz.kantecki at intel.com>; Sunil Kumar Kori <skori at marvell.com>;
> > > > Hemant Agrawal <hemant.agrawal at nxp.com>
> > > > Cc: dev at dpdk.org
> > > > Subject: RE: [dpdk-dev] [PATCH v2 04/11] examples/l3fwd: add ethdev setup
> > > > based on eventdev
> > > >
> > > > >> >&local_port_conf);
> > > > >> >> +               if (ret < 0)
> > > > >> >> +                       rte_exit(EXIT_FAILURE,
> > > > >> >> +                                "Cannot configure device: err=%d,
> > > > >> >> port=%d\n",
> > > > >> >> +                                ret, port_id);
> > > > >> >> +
> > > > >> >
> > > > >> >We should be using number of RX queues as per the config option
> > > > >> >provided in the arguments.
> > > > >> >L3fwd is supposed to support multiple queue. Right?
> > > > >>
> > > > >> The entire premise of using event device is to showcase packet
> > > > >scheduling to
> > > > >> cores
> > > > >> without the need for splitting packets across multiple queues.
> > > > >>
> > > > >> Queue config is ignored when event mode is selected.
> > > > >
> > > > >For atomic queues, we have single queue providing packets to a single
> > > > >core at a time till processing on that core is completed, irrespective of
> > > > >the flows on that hardware queue.
> > > > >And multiple queues are required to distribute separate packets on
> > > > >separate cores, with these atomic queues maintaining the ordering and
> > > > >not scheduling on other core, until processing core has completed its
> > > > >job.
> > > > >To have this solution generic, we should also take config parameter -
> > > > >(port, number of queues) to enable multiple ethernet RX queues.
> > > > >
> > > >
> > > > Not sure I follow we connect Rx queue to an event queue which is then
> > > > linked to multiple event ports which are polled on
> > > > by respective cores.
> > >
> > > This is what we too support, but with atomic queue case the scenario gets
> > little complex.
> > > Each atomic queue can be scheduled only to one event port at a time, until all
> > the events from
> > > that event port are processed. Then only it can move to other event port.
> >
> > This would make it a poll mode. We might as well use normal PMD + RSS
> > for the same instead.
> > i.e use l3fwd in poll mode. It will be the same in terms of performance. Right?
>
> We do not need to have a complete config, but can have a parameter as number of RX
> queues per port. We will send a patch on top of this to support the same.

Looks good to me.

>
> Thanks,
> Nipun
>
> >
> > >
> > > To have separate event ports process packets at same time in atomic scenario,
> > multiple queues
> > > are required. As l3fwd supports multiple queues, it seems legitimate to add the
> > support.
> > >
> > > Thanks,
> > > Nipun
> > >
> > > > How would increasing Rx queues help? Distributing flows from single event
> > > > queue to multiple event ports is the responsibility
> > > > of Event device as per spec.
> > > > Does DPAA/2 function differently?
> > > >
> > > > Regards,
> > > > Pavan.
> > > >
> > > > >Regards,
> > > > >Nipun
> > > > >
> > > > >>
> > > > >> >
> > > > >> >Regards,
> > > > >> >Nipun
> > > > >> >
> > > > >>
> > > > >> Regards,
> > > > >> Pavan.


More information about the dev mailing list