[dpdk-dev] [PATCH v5 6/8] net/ice: support Rx AVX2 vector

Maxime Coquelin maxime.coquelin at redhat.com
Mon Mar 25 09:26:11 CET 2019


Hi,

On 3/25/19 3:22 AM, Lu, Wenzhuo wrote:
> Hi Maxime,
> 
> 
>> -----Original Message-----
>> From: Maxime Coquelin [mailto:maxime.coquelin at redhat.com]
>> Sent: Friday, March 22, 2019 6:12 PM
>> To: Lu, Wenzhuo <wenzhuo.lu at intel.com>; dev at dpdk.org
>> Subject: Re: [dpdk-dev] [PATCH v5 6/8] net/ice: support Rx AVX2 vector
> 
> 
>>> +#ifndef RTE_LIBRTE_ICE_16BYTE_RX_DESC
>>
>> I see same is done for other Intel NICs, but I wonder what would be the
>> performance cost of making it dynamic, if any cost?
> Currently we don't have a good idea to make it dynamic. If we use pointer to point to different functions for 16 byte and 32 byte, there's too much duplicate code to make it hard to maintain. If we use the same function, and check the configure in it. It impacts the performance.

Have you done some measurements, what would be the performance impact?

> As HW does not support to change the configuration dynamically. The device must be stopped and restarted if the configuration is changed. It's not very helpful to make it a dynamic configuration. We assume that the users can make their choice at the beginning and will not change it.

The problem is that the user has to recompile to switch between the two
configurations. And it may not be an option for the user if he uses dpdk 
packaged by a distribution, for example.

Maybe I was not clear, but I don't mean to be able to switch mode while 
the port is started. I think it would be better to make it possible to 
switch mode at application startup time.

> 
>>
>> Having it dynamic (as a dev arg for instance) would make it possible to
>> change the value when the user is using dpdk from a distro. It would also
>> help testing coverage.
>>
>> Btw, how do you select this option with meson build system?
> Not very familiar with meson. As I know, we can change the meson.build to add the configure.
> 

Ok, then please try to do it, because the legacy build system is going
to be deprecated.


More information about the dev mailing list