mbox series

[RFC,0/3] Vectorize packed ring RX path with NEON

Message ID 20200911120906.45995-1-joyce.kong@arm.com (mailing list archive)
Headers
Series Vectorize packed ring RX path with NEON |

Message

Joyce Kong Sept. 11, 2020, 12:09 p.m. UTC
  This patch set introduced vectorized RX path for packed ring
with NEON.

Joyce Kong (3):
  net/virtio: move AVX based Rx and Tx code to separate file
  net/virtio: add vectorized packed ring Rx NEON path
  net/virtio: add election for packed vector Rx NEON path

 doc/guides/nics/virtio.rst                   |   4 +-
 drivers/net/virtio/meson.build               |   2 +
 drivers/net/virtio/virtio_ethdev.c           |  19 +-
 drivers/net/virtio/virtio_rxtx.c             |   7 +-
 drivers/net/virtio/virtio_rxtx_packed.c      |  37 +++
 drivers/net/virtio/virtio_rxtx_packed.h      | 300 +++++++++++++++++++
 drivers/net/virtio/virtio_rxtx_packed_avx.c  | 264 +---------------
 drivers/net/virtio/virtio_rxtx_packed_neon.c | 202 +++++++++++++
 drivers/net/virtio/virtio_user_ethdev.c      |   2 +
 9 files changed, 566 insertions(+), 271 deletions(-)
 create mode 100644 drivers/net/virtio/virtio_rxtx_packed.c
 create mode 100644 drivers/net/virtio/virtio_rxtx_packed.h
 create mode 100644 drivers/net/virtio/virtio_rxtx_packed_neon.c
  

Comments

Maxime Coquelin Oct. 5, 2020, 7:34 a.m. UTC | #1
Hi Joyce,

On 9/11/20 2:09 PM, Joyce Kong wrote:
> This patch set introduced vectorized RX path for packed ring
> with NEON.

Overall, the series looks good. I will have to trust you on
the NEON implementation. Ideally, having a detailed review from
someone from ARM would be good.

Could you please send a new revision with the build issues reported by
Intel CI fixed?

http://mails.dpdk.org/archives/test-report/2020-September/152501.html

Thanks,
Maxime


> Joyce Kong (3):
>   net/virtio: move AVX based Rx and Tx code to separate file
>   net/virtio: add vectorized packed ring Rx NEON path
>   net/virtio: add election for packed vector Rx NEON path
> 
>  doc/guides/nics/virtio.rst                   |   4 +-
>  drivers/net/virtio/meson.build               |   2 +
>  drivers/net/virtio/virtio_ethdev.c           |  19 +-
>  drivers/net/virtio/virtio_rxtx.c             |   7 +-
>  drivers/net/virtio/virtio_rxtx_packed.c      |  37 +++
>  drivers/net/virtio/virtio_rxtx_packed.h      | 300 +++++++++++++++++++
>  drivers/net/virtio/virtio_rxtx_packed_avx.c  | 264 +---------------
>  drivers/net/virtio/virtio_rxtx_packed_neon.c | 202 +++++++++++++
>  drivers/net/virtio/virtio_user_ethdev.c      |   2 +
>  9 files changed, 566 insertions(+), 271 deletions(-)
>  create mode 100644 drivers/net/virtio/virtio_rxtx_packed.c
>  create mode 100644 drivers/net/virtio/virtio_rxtx_packed.h
>  create mode 100644 drivers/net/virtio/virtio_rxtx_packed_neon.c
>
  
Joyce Kong Oct. 8, 2020, 6:54 a.m. UTC | #2
Hi Maxime,

> -----Original Message-----
> From: Maxime Coquelin <maxime.coquelin@redhat.com>
> Sent: Monday, October 5, 2020 3:34 PM
> To: Joyce Kong <Joyce.Kong@arm.com>
> Cc: jerinj@marvell.com; dev@dpdk.org; nd <nd@arm.com>; Honnappa
> Nagarahalli <Honnappa.Nagarahalli@arm.com>; Ruifeng Wang
> <Ruifeng.Wang@arm.com>; Phil Yang <Phil.Yang@arm.com>
> Subject: Re: [RFC 0/3] Vectorize packed ring RX path with NEON
> 
> Hi Joyce,
> 
> On 9/11/20 2:09 PM, Joyce Kong wrote:
> > This patch set introduced vectorized RX path for packed ring with
> > NEON.
> 
> Overall, the series looks good. I will have to trust you on the NEON
> implementation. Ideally, having a detailed review from someone from ARM
> would be good.
> 
> Could you please send a new revision with the build issues reported by Intel
> CI fixed?
> 
> http://mails.dpdk.org/archives/test-report/2020-September/152501.html
> 
> Thanks,
> Maxime
> 

Thanks for your comments, and I will send the new revision soon.

> 
> > Joyce Kong (3):
> >   net/virtio: move AVX based Rx and Tx code to separate file
> >   net/virtio: add vectorized packed ring Rx NEON path
> >   net/virtio: add election for packed vector Rx NEON path
> >
> >  doc/guides/nics/virtio.rst                   |   4 +-
> >  drivers/net/virtio/meson.build               |   2 +
> >  drivers/net/virtio/virtio_ethdev.c           |  19 +-
> >  drivers/net/virtio/virtio_rxtx.c             |   7 +-
> >  drivers/net/virtio/virtio_rxtx_packed.c      |  37 +++
> >  drivers/net/virtio/virtio_rxtx_packed.h      | 300 +++++++++++++++++++
> >  drivers/net/virtio/virtio_rxtx_packed_avx.c  | 264 +---------------
> > drivers/net/virtio/virtio_rxtx_packed_neon.c | 202 +++++++++++++
> >  drivers/net/virtio/virtio_user_ethdev.c      |   2 +
> >  9 files changed, 566 insertions(+), 271 deletions(-)  create mode
> > 100644 drivers/net/virtio/virtio_rxtx_packed.c
> >  create mode 100644 drivers/net/virtio/virtio_rxtx_packed.h
> >  create mode 100644 drivers/net/virtio/virtio_rxtx_packed_neon.c
> >
  
Ruifeng Wang Oct. 15, 2020, 9:01 a.m. UTC | #3
> -----Original Message-----
> From: Maxime Coquelin <maxime.coquelin@redhat.com>
> Sent: Monday, October 5, 2020 3:34 PM
> To: Joyce Kong <Joyce.Kong@arm.com>
> Cc: jerinj@marvell.com; dev@dpdk.org; nd <nd@arm.com>; Honnappa
> Nagarahalli <Honnappa.Nagarahalli@arm.com>; Ruifeng Wang
> <Ruifeng.Wang@arm.com>; Phil Yang <Phil.Yang@arm.com>
> Subject: Re: [RFC 0/3] Vectorize packed ring RX path with NEON
> 
> Hi Joyce,
> 
> On 9/11/20 2:09 PM, Joyce Kong wrote:
> > This patch set introduced vectorized RX path for packed ring with
> > NEON.
> 
> Overall, the series looks good. I will have to trust you on the NEON
> implementation. Ideally, having a detailed review from someone from ARM
> would be good.
This patch doesn’t target 20.11. New version will be sent out but not in short time.
You can skip this one for 20.11 release.

Thanks.
> 
> Could you please send a new revision with the build issues reported by Intel
> CI fixed?
> 
> http://mails.dpdk.org/archives/test-report/2020-September/152501.html
> 
> Thanks,
> Maxime
> 
> 
> > Joyce Kong (3):
> >   net/virtio: move AVX based Rx and Tx code to separate file
> >   net/virtio: add vectorized packed ring Rx NEON path
> >   net/virtio: add election for packed vector Rx NEON path
> >
> >  doc/guides/nics/virtio.rst                   |   4 +-
> >  drivers/net/virtio/meson.build               |   2 +
> >  drivers/net/virtio/virtio_ethdev.c           |  19 +-
> >  drivers/net/virtio/virtio_rxtx.c             |   7 +-
> >  drivers/net/virtio/virtio_rxtx_packed.c      |  37 +++
> >  drivers/net/virtio/virtio_rxtx_packed.h      | 300 +++++++++++++++++++
> >  drivers/net/virtio/virtio_rxtx_packed_avx.c  | 264 +---------------
> > drivers/net/virtio/virtio_rxtx_packed_neon.c | 202 +++++++++++++
> >  drivers/net/virtio/virtio_user_ethdev.c      |   2 +
> >  9 files changed, 566 insertions(+), 271 deletions(-)  create mode
> > 100644 drivers/net/virtio/virtio_rxtx_packed.c
> >  create mode 100644 drivers/net/virtio/virtio_rxtx_packed.h
> >  create mode 100644 drivers/net/virtio/virtio_rxtx_packed_neon.c
> >
  
Maxime Coquelin Oct. 15, 2020, 9:02 a.m. UTC | #4
On 10/15/20 11:01 AM, Ruifeng Wang wrote:
> 
>> -----Original Message-----
>> From: Maxime Coquelin <maxime.coquelin@redhat.com>
>> Sent: Monday, October 5, 2020 3:34 PM
>> To: Joyce Kong <Joyce.Kong@arm.com>
>> Cc: jerinj@marvell.com; dev@dpdk.org; nd <nd@arm.com>; Honnappa
>> Nagarahalli <Honnappa.Nagarahalli@arm.com>; Ruifeng Wang
>> <Ruifeng.Wang@arm.com>; Phil Yang <Phil.Yang@arm.com>
>> Subject: Re: [RFC 0/3] Vectorize packed ring RX path with NEON
>>
>> Hi Joyce,
>>
>> On 9/11/20 2:09 PM, Joyce Kong wrote:
>>> This patch set introduced vectorized RX path for packed ring with
>>> NEON.
>>
>> Overall, the series looks good. I will have to trust you on the NEON
>> implementation. Ideally, having a detailed review from someone from ARM
>> would be good.
> This patch doesn’t target 20.11. New version will be sent out but not in short time.
> You can skip this one for 20.11 release.

Thanks Ruifeng for the update.
I'll mark the series as postponed then.

Maxime

> Thanks.
>>
>> Could you please send a new revision with the build issues reported by Intel
>> CI fixed?
>>
>> http://mails.dpdk.org/archives/test-report/2020-September/152501.html
>>
>> Thanks,
>> Maxime
>>
>>
>>> Joyce Kong (3):
>>>   net/virtio: move AVX based Rx and Tx code to separate file
>>>   net/virtio: add vectorized packed ring Rx NEON path
>>>   net/virtio: add election for packed vector Rx NEON path
>>>
>>>  doc/guides/nics/virtio.rst                   |   4 +-
>>>  drivers/net/virtio/meson.build               |   2 +
>>>  drivers/net/virtio/virtio_ethdev.c           |  19 +-
>>>  drivers/net/virtio/virtio_rxtx.c             |   7 +-
>>>  drivers/net/virtio/virtio_rxtx_packed.c      |  37 +++
>>>  drivers/net/virtio/virtio_rxtx_packed.h      | 300 +++++++++++++++++++
>>>  drivers/net/virtio/virtio_rxtx_packed_avx.c  | 264 +---------------
>>> drivers/net/virtio/virtio_rxtx_packed_neon.c | 202 +++++++++++++
>>>  drivers/net/virtio/virtio_user_ethdev.c      |   2 +
>>>  9 files changed, 566 insertions(+), 271 deletions(-)  create mode
>>> 100644 drivers/net/virtio/virtio_rxtx_packed.c
>>>  create mode 100644 drivers/net/virtio/virtio_rxtx_packed.h
>>>  create mode 100644 drivers/net/virtio/virtio_rxtx_packed_neon.c
>>>
>