[dpdk-dev] Requirement of minimum Rx burst size for PMDs

Bruce Richardson bruce.richardson at intel.com
Fri Oct 20 10:13:49 CEST 2017


On Fri, Oct 20, 2017 at 01:18:18AM +0000, Yongseok Koh wrote:
> Hi,
> 
> In some rx_burst functions, especially for vectorized ones (e.g. i40e_rxtx_vec*
> or mlx5_rxtx_vec*), there's actually a requirement of min burst size.
> 
> As it manipulates 4 packets simultaneously in a loop, if nb_pkts of
> rte_eth_rx_burst() is less than 4, it just returns without sending a packet.
> 
> One way to handle it could be falling back to regular rx_burst in such cases but
> the burst size isn't a fixed/static parameter but applications can dynamically
> change it when it polls a device. So, it might not be a good option.
> 
> Therefore, how about adding min_rx/tx_burst_sz in struct rte_eth_dev_info and
> have PMDs fill it in on dev_ops->dev_infos_get() so as to make apps comply with
> it.
> 
> Because the max size of a burst can be handled well by PMD, it may not be
> necessary.
> 
> Thoughts?
>
For a short term fix, having the min burst size in the device info is a
good enough fix, I think. Medium to long term, we need to remove this
limitation in the vector drivers.

/Bruce


More information about the dev mailing list