[dpdk-dev] Q on IXGBE and I40E vector Tx processing

Ravi Kerur rkerur at gmail.com
Sun Apr 16 21:33:39 CEST 2017


Hi,

The reason I am asking I because I have tried different combinations of
scalar and vector Tx and Rx processing for both IXGBE and I40E with
following results

1. Vector Rx and Vector Tx gives best performance but can only support
packet size of less than or equal to 2048 bytes

2. Scalar Rx and Scalar Tx works for all packet size but with degraded
performance

3. Vector Rx and Scalar Tx (with certain PMD configuration) works fine
(performance doesn't meet '1') but it has an inherent bug for packet size
8192 bytes as PMD stops packet processing

>From the code I see both IXGBE and I40E can support scattered vector Rx, I
am curious to know any obvious reasons scattered vector Tx support is left
out and does it make sense to implement it?

If it makes sense to implement scattered vector Tx and Intel team hasn't
worked on it I would like to make an attempt at it so kindly let me know.

Thanks.

On Fri, Apr 14, 2017 at 10:35 AM, Ravi Kerur <rkerur at gmail.com> wrote:

> Hi,
>
> We are using dpdk 16.04 and by looking at the ixgbe and
> i40e(i40e_xmit_pkts_vec) and ixgbe(ixgbe_xmit_pkts_vec) driver vector tx
> processing code I see they both don't handle scattered packet processing.
> For any packets greater than 2048 bytes which will basically contain
> multiple rte_mbuf segs vector tx processing cannot be used.
>
> Any reasons why vector tx for both ixgbe and i40e doesn't support
> scattered or multiple mbuf segments processing?
>
> Thanks.
>


More information about the dev mailing list