[dpdk-dev] [PATCH 2/2] event/sw: code refractor for sw_refill_pp_buf
Van Haaren, Harry
harry.van.haaren at intel.com
Tue Apr 3 14:50:24 CEST 2018
> -----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