DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] Q on IXGBE and I40E vector Tx processing
@ 2017-04-14 17:35 Ravi Kerur
  2017-04-16 19:33 ` Ravi Kerur
  0 siblings, 1 reply; 4+ messages in thread
From: Ravi Kerur @ 2017-04-14 17:35 UTC (permalink / raw)
  To: dev

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.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] Q on IXGBE and I40E vector Tx processing
  2017-04-14 17:35 [dpdk-dev] Q on IXGBE and I40E vector Tx processing Ravi Kerur
@ 2017-04-16 19:33 ` Ravi Kerur
  2017-04-16 22:26   ` Ananyev, Konstantin
  0 siblings, 1 reply; 4+ messages in thread
From: Ravi Kerur @ 2017-04-16 19:33 UTC (permalink / raw)
  To: dev

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@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.
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] Q on IXGBE and I40E vector Tx processing
  2017-04-16 19:33 ` Ravi Kerur
@ 2017-04-16 22:26   ` Ananyev, Konstantin
  2017-04-17 23:47     ` Ravi Kerur
  0 siblings, 1 reply; 4+ messages in thread
From: Ananyev, Konstantin @ 2017-04-16 22:26 UTC (permalink / raw)
  To: Ravi Kerur, dev


Hi Ravi,

> 
> 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.
>

Yes, right now there is a tradeoff - simple TX functions (both vector and scalar) are much
faster than full-featured TX function, but don't support any TX offloads or multi-segs.
If you'd like to provide a patch that would add  some TX offloads to the simple path
without any performance degradation or either a patch that would improve performance
of full-featured TX function - I am pretty sure such patches would be welcomed. 
Konstantin  

 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] Q on IXGBE and I40E vector Tx processing
  2017-04-16 22:26   ` Ananyev, Konstantin
@ 2017-04-17 23:47     ` Ravi Kerur
  0 siblings, 0 replies; 4+ messages in thread
From: Ravi Kerur @ 2017-04-17 23:47 UTC (permalink / raw)
  To: Ananyev, Konstantin; +Cc: dev

Hi Konstantin,

On Sun, Apr 16, 2017 at 3:26 PM, Ananyev, Konstantin <
konstantin.ananyev@intel.com> wrote:

>
> Hi Ravi,
>
> >
> > 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.
> >
>
> Yes, right now there is a tradeoff - simple TX functions (both vector and
> scalar) are much
> faster than full-featured TX function, but don't support any TX offloads
> or multi-segs.
> If you'd like to provide a patch that would add  some TX offloads to the
> simple path
> without any performance degradation or either a patch that would improve
> performance
> of full-featured TX function - I am pretty sure such patches would be
> welcomed.
>

Let me work on it and get back to you for any questions for clarifications.

Thanks,


> Konstantin
>
>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-04-17 23:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-14 17:35 [dpdk-dev] Q on IXGBE and I40E vector Tx processing Ravi Kerur
2017-04-16 19:33 ` Ravi Kerur
2017-04-16 22:26   ` Ananyev, Konstantin
2017-04-17 23:47     ` Ravi Kerur

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).