[dpdk-dev] [PATCH 2/2] event/sw: code refractor for sw_refill_pp_buf

Varghese, Vipin vipin.varghese at intel.com
Wed Apr 4 13:51:47 CEST 2018


Sure Harry, I am ok with your suggestion.

> -----Original Message-----
> From: Van Haaren, Harry
> Sent: Tuesday, April 3, 2018 6:20 PM
> To: Varghese, Vipin <vipin.varghese at intel.com>; dev at dpdk.org
> Subject: RE: [PATCH 2/2] event/sw: code refractor for sw_refill_pp_buf
> 
> > -----Original Message-----
> > From: Varghese, Vipin
> > Sent: Thursday, March 1, 2018 7:35 PM
> > To: dev at dpdk.org; Van Haaren, Harry <harry.van.haaren at intel.com>
> > Cc: Varghese, Vipin <vipin.varghese at intel.com>
> > Subject: [PATCH 2/2] event/sw: code refractor for sw_refill_pp_buf
> >
> > Code changes how shadow buffer are filled up in each calls.
> > Refilling the shadow buffer helped in improving 0.2 Mpps.
> >
> > Signed-off-by: Vipin Varghese <vipin.varghese at intel.com>
> > ---
> >  drivers/event/sw/sw_evdev_scheduler.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/drivers/event/sw/sw_evdev_scheduler.c
> > b/drivers/event/sw/sw_evdev_scheduler.c
> > index 70d1970..a95a22a 100644
> > --- a/drivers/event/sw/sw_evdev_scheduler.c
> > +++ b/drivers/event/sw/sw_evdev_scheduler.c
> > @@ -451,6 +451,10 @@ __pull_port_lb(struct sw_evdev *sw, uint32_t
> > port_id, int
> > allow_reorder)
> >  		port->pp_buf_count--;
> >  	} /* while (avail_qes) */
> >
> > +	/* replensih buffers before next iteration */
> > +	if (port->pp_buf_count == 0)
> > +		sw_refill_pp_buf(sw, port);
> > +
> >  	return pkts_iter;
> >  }
> 
> 
> I see the goal here - to ensure that the port buffer has items when we next enter
> this function, possibly reducing a stall waiting for the ring access.
> 
> In theory this is a good idea - in practice, I see a small performance degradation.
> Hence, I suggest we drop this patch from the patchset, and merge 1/2 alone.


More information about the dev mailing list