DPDK patches and discussions
 help / color / Atom feed
From: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
To: "Power, Ciara" <ciara.power@intel.com>,
	"Medvedkin, Vladimir" <vladimir.medvedkin@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Cc: "Richardson, Bruce" <bruce.richardson@intel.com>,
	Jerin Jacob <jerinj@marvell.com>,
	Ruifeng Wang <ruifeng.wang@arm.com>
Subject: Re: [dpdk-dev] [PATCH v3 18/18] lpm: choose vector path at runtime
Date: Sun, 11 Oct 2020 22:49:05 +0000
Message-ID: <BYAPR11MB33018C29604DEF81E9FEE8819A060@BYAPR11MB3301.namprd11.prod.outlook.com> (raw)
In-Reply-To: <DM6PR11MB25555EA7E2D27ABF4FE4B843E6080@DM6PR11MB2555.namprd11.prod.outlook.com>

Hi Ciara,

> Hi Konstantin,
> 
> 
> >-----Original Message-----
> >From: Ananyev, Konstantin <konstantin.ananyev@intel.com>
> >Sent: Thursday 8 October 2020 15:40
> >To: Medvedkin, Vladimir <vladimir.medvedkin@intel.com>; Power, Ciara
> ><ciara.power@intel.com>; dev@dpdk.org
> >Cc: Richardson, Bruce <bruce.richardson@intel.com>; Jerin Jacob
> ><jerinj@marvell.com>; Ruifeng Wang <ruifeng.wang@arm.com>
> >Subject: RE: [dpdk-dev] [PATCH v3 18/18] lpm: choose vector path at runtime
> >
> >>
> >> Hi Ciara,
> >>
> >>
> >> On 30/09/2020 14:04, Ciara Power wrote:
> >> > When choosing the vector path, max SIMD bitwidth is now checked to
> >> > ensure a vector path is allowable. To do this, rather than the
> >> > vector lookup functions being called directly from apps, a generic
> >> > lookup function is called which will call the vector functions if suitable.
> >> >
> >> > Signed-off-by: Ciara Power <ciara.power@intel.com>
> >> > ---
> >> >   lib/librte_lpm/rte_lpm.h         | 57 ++++++++++++++++++++++++++------
> >> >   lib/librte_lpm/rte_lpm_altivec.h |  2 +-
> >> >   lib/librte_lpm/rte_lpm_neon.h    |  2 +-
> >> >   lib/librte_lpm/rte_lpm_sse.h     |  2 +-
> >> >   4 files changed, 50 insertions(+), 13 deletions(-)
> >> >
> >> > diff --git a/lib/librte_lpm/rte_lpm.h b/lib/librte_lpm/rte_lpm.h
> >> > index 03da2d37e0..edba7cafd5 100644
> >> > --- a/lib/librte_lpm/rte_lpm.h
> >> > +++ b/lib/librte_lpm/rte_lpm.h
> >> > @@ -397,8 +397,18 @@ rte_lpm_lookup_bulk_func(const struct rte_lpm
> >*lpm, const uint32_t *ips,
> >> >   /* Mask four results. */
> >> >   #define	 RTE_LPM_MASKX4_RES	UINT64_C(0x00ffffff00ffffff)
> >> >
> >> > +#if defined(RTE_ARCH_ARM) || defined(RTE_ARCH_ARM64) #include
> >> > +"rte_lpm_neon.h"
> >> > +#elif defined(RTE_ARCH_PPC_64)
> >> > +#include "rte_lpm_altivec.h"
> >> > +#else
> >> > +#include "rte_lpm_sse.h"
> >> > +#endif
> >> > +
> >> >   /**
> >> > - * Lookup four IP addresses in an LPM table.
> >> > + * Lookup four IP addresses in an LPM table individually by calling
> >> > + the
> >> > + * lookup function for each ip. This is used when lookupx4 is
> >> > + called but
> >> > + * the vector path is not suitable.
> >> >    *
> >> >    * @param lpm
> >> >    *   LPM object handle
> >> > @@ -417,16 +427,43 @@ rte_lpm_lookup_bulk_func(const struct
> >rte_lpm *lpm, const uint32_t *ips,
> >> >    *   if lookup would fail.
> >> >    */
> >> >   static inline void
> >> > -rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4],
> >> > -	uint32_t defv);
> >> > +rte_lpm_lookupx4_scalar(struct rte_lpm *lpm, xmm_t ip, uint32_t
> >hop[4],
> >> > +	uint32_t defv)
> >> > +{
> >> > +	int i;
> >> > +	for (i = 0; i < 4; i++)
> >> > +		if (rte_lpm_lookup(lpm, ((uint32_t *) &ip)[i], &hop[i]) < 0)
> >> > +			hop[i] = defv; /* lookupx4 expected to set on failure
> >*/ }
> >> >
> >> > -#if defined(RTE_ARCH_ARM) || defined(RTE_ARCH_ARM64) -#include
> >> > "rte_lpm_neon.h"
> >> > -#elif defined(RTE_ARCH_PPC_64)
> >> > -#include "rte_lpm_altivec.h"
> >> > -#else
> >> > -#include "rte_lpm_sse.h"
> >> > -#endif
> >> > +/**
> >> > + * Lookup four IP addresses in an LPM table.
> >> > + *
> >> > + * @param lpm
> >> > + *   LPM object handle
> >> > + * @param ip
> >> > + *   Four IPs to be looked up in the LPM table
> >> > + * @param hop
> >> > + *   Next hop of the most specific rule found for IP (valid on lookup hit
> >only).
> >> > + *   This is an 4 elements array of two byte values.
> >> > + *   If the lookup was successful for the given IP, then least significant
> >byte
> >> > + *   of the corresponding element is the  actual next hop and the most
> >> > + *   significant byte is zero.
> >> > + *   If the lookup for the given IP failed, then corresponding element
> >would
> >> > + *   contain default value, see description of then next parameter.
> >> > + * @param defv
> >> > + *   Default value to populate into corresponding element of hop[] array,
> >> > + *   if lookup would fail.
> >> > + */
> >> > +static inline void
> >> > +rte_lpm_lookupx4(struct rte_lpm *lpm, xmm_t ip, uint32_t hop[4],
> >> > +	uint32_t defv)
> >> > +{
> >> > +	if (rte_get_max_simd_bitwidth() >= RTE_MAX_128_SIMD)
> >> > +		rte_lpm_lookupx4_vec(lpm, ip, hop, defv);
> >> > +	else
> >> > +		rte_lpm_lookupx4_scalar(lpm, ip, hop, defv); }
> >>
> >> I'm afraid this will lead to a drop in performance. rte_lpm_lookupx4
> >> is used in the hot path, and a bulk size is too small to amortize the
> >> cost of adding this extra logic.
> >
> >I do share Vladimir's concern regarding performance here.
> >As I said in other mail - it seems not much point to insert these checks into
> >inline SSE specific function, as SSE is enabled by default for all x86 builds.
> >
> 
> The performance impact is quite small, thanks Vladimir for providing these results:
> 
> before patches:
> 	LPM LookupX4: 25.1 cycles (fails = 12.5%)
> 	LPM LookupX4: 25.2 cycles (fails = 12.5%)
> 	LPM LookupX4: 25.2 cycles (fails = 12.5%)
> 
> v3:
> 	LPM LookupX4: 26.2 cycles (fails = 12.5%)
> 	LPM LookupX4: 26.2 cycles (fails = 12.5%)
> 	LPM LookupX4: 26.2 cycles (fails = 12.5%) 

Yes, perf difference is surprisingly small...
Wonder what tests did you use for that?
I'd expect that on l3fwd it would be more noticeable,
especially on machines with low-end cpus. 

> v4:
> Note: I haven't sent this publicly yet, modified v3 slightly to check the bitwidth
> in LPM create and set a flag that is used in lookupx4 to choose either vector or scalar function.

Yes, avoiding function call will definitely help here.
Though I am sill not convinced we have to make such checks in that function at all
(and other inline functions).
Inline functions will be compiled within user code and their behaviour should be controlled
together with the rest of user code.
Let say  in l3fwd for IA rte_lpm_lookupx4 is called from /l3fwd_lpm_sse.h,
which as name implies is supposed to be build and used with SSE enabled.
If we'd like l3fwd to obey 'max-simd-width' parameter, then it needs to be done
somewhere at startup, when behaviour is selected, not inside every possible inline function
that does use SSE instrincts.

> 	LPM LookupX4: 25.5 cycles (fails = 12.5%)
> 	LPM LookupX4: 25.5 cycles (fails = 12.5%)
> 	LPM LookupX4: 25.5 cycles (fails = 12.5%)
> 
> 
> Thanks,
> Ciara
> 
> >As another more generic thought - might be better to avoid these checks in
> >other public SIMD-specific inline functions (if any).
> >If such function get called from some .c, then at least such SIMD ISA is
> >already enabled for that .c file and I think this check should be
> >left for caller to do.
> >
> >> >
> >> >   #ifdef __cplusplus
> >> >   }
> >> > diff --git a/lib/librte_lpm/rte_lpm_altivec.h
> >> > b/lib/librte_lpm/rte_lpm_altivec.h
> >> > index 228c41b38e..82142d3351 100644
> >> > --- a/lib/librte_lpm/rte_lpm_altivec.h
> >> > +++ b/lib/librte_lpm/rte_lpm_altivec.h
> >> > @@ -16,7 +16,7 @@ extern "C" {
> >> >   #endif
> >> >
> >> >   static inline void
> >> > -rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t
> >> > hop[4],
> >> > +rte_lpm_lookupx4_vec(const struct rte_lpm *lpm, xmm_t ip, uint32_t
> >> > +hop[4],
> >> >   	uint32_t defv)
> >> >   {
> >> >   	vector signed int i24;
> >> > diff --git a/lib/librte_lpm/rte_lpm_neon.h
> >> > b/lib/librte_lpm/rte_lpm_neon.h index 6c131d3125..14b184515d 100644
> >> > --- a/lib/librte_lpm/rte_lpm_neon.h
> >> > +++ b/lib/librte_lpm/rte_lpm_neon.h
> >> > @@ -16,7 +16,7 @@ extern "C" {
> >> >   #endif
> >> >
> >> >   static inline void
> >> > -rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t
> >> > hop[4],
> >> > +rte_lpm_lookupx4_vec(const struct rte_lpm *lpm, xmm_t ip, uint32_t
> >> > +hop[4],
> >> >   	uint32_t defv)
> >> >   {
> >> >   	uint32x4_t i24;
> >> > diff --git a/lib/librte_lpm/rte_lpm_sse.h
> >> > b/lib/librte_lpm/rte_lpm_sse.h index 44770b6ff8..cb5477c6cf 100644
> >> > --- a/lib/librte_lpm/rte_lpm_sse.h
> >> > +++ b/lib/librte_lpm/rte_lpm_sse.h
> >> > @@ -15,7 +15,7 @@ extern "C" {
> >> >   #endif
> >> >
> >> >   static inline void
> >> > -rte_lpm_lookupx4(const struct rte_lpm *lpm, xmm_t ip, uint32_t
> >> > hop[4],
> >> > +rte_lpm_lookupx4_vec(const struct rte_lpm *lpm, xmm_t ip, uint32_t
> >> > +hop[4],
> >> >   	uint32_t defv)
> >> >   {
> >> >   	__m128i i24;
> >> >
> >>
> >> --
> >> Regards,
> >> Vladimir

  reply index

Thread overview: 276+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-07 15:58 [dpdk-dev] [PATCH 20.11 00/12] add max SIMD bitwidth to EAL Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 01/12] eal: add max SIMD bitwidth Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 02/12] eal: add default SIMD bitwidth values Ciara Power
2020-08-07 16:31   ` David Christensen
2020-08-07 16:59     ` David Christensen
2020-08-12 11:28     ` Power, Ciara
2020-08-10  5:22   ` Ruifeng Wang
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 03/12] net/i40e: add checks for max SIMD bitwidth Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 04/12] net/axgbe: " Ciara Power
2020-08-07 17:49   ` Somalapuram, Amaranath
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 05/12] net/bnxt: " Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 06/12] net/enic: " Ciara Power
2020-08-10  4:50   ` Hyong Youb Kim (hyonkim)
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 07/12] net/fm10k: " Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 08/12] net/iavf: " Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 09/12] net/ice: " Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 10/12] net/ixgbe: " Ciara Power
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 11/12] net/mlx5: " Ciara Power
2020-08-10 17:26   ` Alexander Kozyrev
2020-08-07 15:58 ` [dpdk-dev] [PATCH 20.11 12/12] net/virtio: " Ciara Power
2020-08-07 16:19 ` [dpdk-dev] [PATCH 20.11 00/12] add max SIMD bitwidth to EAL Stephen Hemminger
2020-08-10  9:52   ` Power, Ciara
2020-08-11  5:36 ` Honnappa Nagarahalli
2020-08-12 11:39   ` Power, Ciara
2020-08-27 16:12 ` [dpdk-dev] [PATCH v2 00/17] " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 01/17] eal: add max SIMD bitwidth Ciara Power
2020-09-04  5:30     ` Honnappa Nagarahalli
2020-09-04  8:45       ` Bruce Richardson
2020-09-09 19:30         ` Honnappa Nagarahalli
2020-09-17 16:31           ` Kinsella, Ray
2020-09-17 16:43             ` Bruce Richardson
2020-09-18  2:13             ` Honnappa Nagarahalli
2020-09-18  8:35               ` Bruce Richardson
2020-09-06 22:01     ` Ananyev, Konstantin
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 02/17] eal: add default SIMD bitwidth values Ciara Power
2020-09-04  5:30     ` Honnappa Nagarahalli
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 03/17] doc: add detail on using max SIMD bitwidth Ciara Power
2020-09-06 22:20     ` Ananyev, Konstantin
2020-09-07  8:44       ` Bruce Richardson
2020-09-07 12:01         ` Ananyev, Konstantin
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 04/17] net/i40e: add checks for " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 05/17] net/axgbe: " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 06/17] net/bnxt: " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 07/17] net/enic: " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 08/17] net/fm10k: " Ciara Power
2020-10-07  5:01     ` Wang, Xiao W
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 09/17] net/iavf: " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 10/17] net/ice: " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 11/17] net/ixgbe: " Ciara Power
2020-08-27 16:12   ` [dpdk-dev] [PATCH v2 12/17] net/mlx5: " Ciara Power
2020-08-27 16:13   ` [dpdk-dev] [PATCH v2 13/17] net/virtio: " Ciara Power
2020-08-31  2:39     ` Xia, Chenbo
2020-08-27 16:13   ` [dpdk-dev] [PATCH v2 14/17] distributor: " Ciara Power
2020-08-27 16:13   ` [dpdk-dev] [PATCH v2 15/17] member: " Ciara Power
2020-08-27 16:13   ` [dpdk-dev] [PATCH v2 16/17] efd: " Ciara Power
2020-08-27 16:13   ` [dpdk-dev] [PATCH v2 17/17] net: " Ciara Power
2020-09-02 11:02     ` Singh, Jasvinder
2020-09-30 13:03 ` [dpdk-dev] [PATCH v3 00/18] add max SIMD bitwidth to EAL Ciara Power
2020-09-30 13:03   ` [dpdk-dev] [PATCH v3 01/18] eal: add max SIMD bitwidth Ciara Power
2020-10-01 14:49     ` Coyle, David
2020-10-06  9:32     ` Olivier Matz
2020-10-07 10:47       ` Power, Ciara
2020-10-07 10:52         ` Bruce Richardson
2020-10-07 11:10           ` Power, Ciara
2020-10-07 11:18         ` Olivier Matz
2020-10-08  9:25           ` Power, Ciara
2020-10-08 10:04             ` Olivier Matz
2020-10-08 10:58               ` Power, Ciara
2020-10-08 11:48                 ` Bruce Richardson
2020-10-08 13:03                   ` Olivier Matz
2020-10-06 11:50     ` Maxime Coquelin
2020-10-07 10:58       ` Power, Ciara
2020-10-08 13:07     ` Ananyev, Konstantin
2020-10-08 13:14       ` Bruce Richardson
2020-10-08 14:07         ` Ananyev, Konstantin
2020-10-08 14:18           ` Bruce Richardson
2020-10-08 14:26             ` Power, Ciara
2020-10-08 13:19     ` Ananyev, Konstantin
2020-10-08 15:28     ` David Marchand
2020-09-30 13:03   ` [dpdk-dev] [PATCH v3 02/18] eal: add default SIMD bitwidth values Ciara Power
2020-10-05 19:35     ` David Christensen
2020-10-08 13:17     ` Ananyev, Konstantin
2020-10-08 16:45     ` David Marchand
2020-09-30 13:03   ` [dpdk-dev] [PATCH v3 03/18] doc: add detail on using max SIMD bitwidth Ciara Power
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 04/18] net/i40e: add checks for " Ciara Power
2020-10-08 15:21     ` Ananyev, Konstantin
2020-10-08 16:05       ` Power, Ciara
2020-10-08 16:14         ` Ananyev, Konstantin
2020-10-09  3:02     ` Guo, Jia
2020-10-09 14:02       ` Power, Ciara
2020-10-10  2:07         ` Guo, Jia
2020-10-12  9:37           ` Bruce Richardson
2020-10-13  2:15             ` Guo, Jia
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 05/18] net/axgbe: " Ciara Power
2020-09-30 13:29     ` Somalapuram, Amaranath
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 06/18] net/bnxt: " Ciara Power
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 07/18] net/enic: " Ciara Power
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 08/18] net/fm10k: " Ciara Power
2020-10-09  0:18     ` Zhang, Qi Z
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 09/18] net/iavf: " Ciara Power
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 10/18] net/ice: " Ciara Power
2020-10-09  0:04     ` Zhang, Qi Z
2020-10-09  1:05       ` Zhang, Qi Z
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 11/18] net/ixgbe: " Ciara Power
2020-10-08 15:05     ` Ananyev, Konstantin
2020-10-10 13:13     ` Wang, Haiyue
2020-10-11 22:31       ` Ananyev, Konstantin
2020-10-12  1:29         ` Wang, Haiyue
2020-10-12  9:09           ` Ananyev, Konstantin
2020-10-12 16:04             ` Wang, Haiyue
2020-10-12 16:24               ` Ananyev, Konstantin
2020-10-13  1:12                 ` Wang, Haiyue
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 12/18] net/mlx5: " Ciara Power
2020-10-05  6:30     ` Slava Ovsiienko
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 13/18] net/virtio: " Ciara Power
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 14/18] distributor: " Ciara Power
2020-10-06 12:17     ` David Hunt
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 15/18] member: " Ciara Power
2020-10-07  0:51     ` Wang, Yipeng1
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 16/18] efd: " Ciara Power
2020-10-07  0:51     ` Wang, Yipeng1
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 17/18] net: " Ciara Power
2020-09-30 15:03     ` Coyle, David
2020-09-30 15:49       ` Singh, Jasvinder
2020-10-01 14:16         ` Coyle, David
2020-10-01 14:19           ` Power, Ciara
2020-10-06 10:00             ` Olivier Matz
2020-10-07 11:16               ` Power, Ciara
2020-10-08 14:55               ` Ananyev, Konstantin
2020-10-13 11:27                 ` Power, Ciara
2020-10-06  9:58     ` Olivier Matz
2020-09-30 13:04   ` [dpdk-dev] [PATCH v3 18/18] lpm: choose vector path at runtime Ciara Power
2020-09-30 13:54     ` Medvedkin, Vladimir
2020-10-08 14:40       ` Ananyev, Konstantin
2020-10-09 14:31         ` Power, Ciara
2020-10-11 22:49           ` Ananyev, Konstantin [this message]
2020-10-08 15:19     ` David Marchand
2020-10-09 12:37       ` David Marchand
2020-10-13 10:38 ` [dpdk-dev] [PATCH v4 00/17] add max SIMD bitwidth to EAL Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 01/17] eal: add max SIMD bitwidth Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 02/17] doc: add detail on using " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 03/17] net/i40e: add checks for " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 04/17] net/axgbe: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 05/17] net/bnxt: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 06/17] net/enic: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 07/17] net/fm10k: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 08/17] net/iavf: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 09/17] net/ice: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 10/17] net/ixgbe: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 11/17] net/mlx5: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 12/17] net/virtio: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 13/17] distributor: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 14/17] member: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 15/17] efd: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 16/17] net: " Ciara Power
2020-10-13 10:38   ` [dpdk-dev] [PATCH v4 17/17] node: choose vector path at runtime Ciara Power
2020-10-13 11:04 ` [dpdk-dev] [PATCH v5 00/17] add max SIMD bitwidth to EAL Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 01/17] eal: add max SIMD bitwidth Ciara Power
2020-10-13 11:58     ` Ananyev, Konstantin
2020-10-14  8:50     ` Ruifeng Wang
2020-10-14 14:19       ` Honnappa Nagarahalli
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 02/17] doc: add detail on using " Ciara Power
2020-10-14  8:24     ` Ruifeng Wang
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 03/17] net/i40e: add checks for " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 04/17] net/axgbe: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 05/17] net/bnxt: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 06/17] net/enic: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 07/17] net/fm10k: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 08/17] net/iavf: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 09/17] net/ice: " Ciara Power
2020-10-13 12:11     ` Zhang, Qi Z
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 10/17] net/ixgbe: " Ciara Power
2020-10-13 11:20     ` Wang, Haiyue
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 11/17] net/mlx5: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 12/17] net/virtio: " Ciara Power
2020-10-14  2:02     ` Xia, Chenbo
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 13/17] distributor: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 14/17] member: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 15/17] efd: " Ciara Power
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 16/17] net: " Ciara Power
2020-10-13 11:32     ` Olivier Matz
2020-10-13 13:07     ` Ananyev, Konstantin
2020-10-13 13:25       ` Ananyev, Konstantin
2020-10-13 13:57         ` Ananyev, Konstantin
2020-10-13 11:04   ` [dpdk-dev] [PATCH v5 17/17] node: choose vector path at runtime Ciara Power
2020-10-13 13:42     ` Ananyev, Konstantin
2020-10-14 10:05       ` Jerin Jacob
2020-10-14  8:28     ` Ruifeng Wang
2020-10-15 10:37 ` [dpdk-dev] [PATCH v6 00/18] add max SIMD bitwidth to EAL Ciara Power
2020-10-15 10:37   ` [dpdk-dev] [PATCH v6 01/18] eal: add max SIMD bitwidth Ciara Power
2020-10-15 10:37   ` [dpdk-dev] [PATCH v6 02/18] doc: add detail on using " Ciara Power
2020-10-15 13:12     ` Kevin Laatz
2020-10-15 10:37   ` [dpdk-dev] [PATCH v6 03/18] net/i40e: add checks for " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 04/18] net/axgbe: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 05/18] net/bnxt: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 06/18] net/enic: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 07/18] net/fm10k: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 08/18] net/iavf: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 09/18] net/ice: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 10/18] net/ixgbe: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 11/18] net/mlx5: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 12/18] net/virtio: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 13/18] distributor: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 14/18] member: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 15/18] efd: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 16/18] net: " Ciara Power
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 17/18] node: choose vector path at runtime Ciara Power
2020-10-15 11:18     ` [dpdk-dev] [EXT] " Nithin Dabilpuram
2020-10-15 10:38   ` [dpdk-dev] [PATCH v6 18/18] acl: add checks for max SIMD bitwidth Ciara Power
2020-10-15 12:31     ` Ananyev, Konstantin
2020-10-15 15:22 ` [dpdk-dev] [PATCH v7 00/18] add max SIMD bitwidth to EAL Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 01/18] eal: add max SIMD bitwidth Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 02/18] doc: add detail on using " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 03/18] net/i40e: add checks for " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 04/18] net/axgbe: " Ciara Power
2020-10-15 15:27     ` Somalapuram, Amaranath
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 05/18] net/bnxt: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 06/18] net/enic: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 07/18] net/fm10k: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 08/18] net/iavf: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 09/18] net/ice: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 10/18] net/ixgbe: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 11/18] net/mlx5: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 12/18] net/virtio: " Ciara Power
2020-10-15 15:30     ` Maxime Coquelin
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 13/18] distributor: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 14/18] member: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 15/18] efd: " Ciara Power
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 16/18] net: " Ciara Power
2020-10-15 17:20     ` Singh, Jasvinder
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 17/18] node: choose vector path at runtime Ciara Power
2020-10-15 15:32     ` Power, Ciara
2020-10-15 15:22   ` [dpdk-dev] [PATCH v7 18/18] acl: add checks for max SIMD bitwidth Ciara Power
2020-10-16  8:13 ` [dpdk-dev] [PATCH v8 00/18] add max SIMD bitwidth to EAL Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 01/18] eal: add max SIMD bitwidth Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 02/18] doc: add detail on using " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 03/18] net/i40e: add checks for " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 04/18] net/axgbe: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 05/18] net/bnxt: " Ciara Power
2020-10-16  9:06     ` Somnath Kotur
2020-10-16  9:10       ` David Marchand
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 06/18] net/enic: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 07/18] net/fm10k: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 08/18] net/iavf: " Ciara Power
2020-10-16 10:16     ` Bruce Richardson
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 09/18] net/ice: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 10/18] net/ixgbe: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 11/18] net/mlx5: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 12/18] net/virtio: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 13/18] distributor: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 14/18] member: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 15/18] efd: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 16/18] net: " Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 17/18] node: choose vector path at runtime Ciara Power
2020-10-16  8:13   ` [dpdk-dev] [PATCH v8 18/18] acl: add checks for max SIMD bitwidth Ciara Power
2020-10-16  8:54     ` Ananyev, Konstantin
2020-10-16 14:27 ` [dpdk-dev] [PATCH v9 00/18] add max SIMD bitwidth to EAL Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 01/18] eal: add max SIMD bitwidth Ciara Power
2020-10-16 15:45     ` Kinsella, Ray
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 02/18] doc: add detail on using " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 03/18] net/i40e: add checks for " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 04/18] net/axgbe: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 05/18] net/bnxt: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 06/18] net/enic: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 07/18] net/fm10k: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 08/18] net/iavf: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 09/18] net/ice: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 10/18] net/ixgbe: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 11/18] net/mlx5: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 12/18] net/virtio: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 13/18] distributor: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 14/18] member: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 15/18] efd: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 16/18] net: " Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 17/18] node: choose vector path at runtime Ciara Power
2020-10-16 14:27   ` [dpdk-dev] [PATCH v9 18/18] acl: add checks for max SIMD bitwidth Ciara Power

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BYAPR11MB33018C29604DEF81E9FEE8819A060@BYAPR11MB3301.namprd11.prod.outlook.com \
    --to=konstantin.ananyev@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=ciara.power@intel.com \
    --cc=dev@dpdk.org \
    --cc=jerinj@marvell.com \
    --cc=ruifeng.wang@arm.com \
    --cc=vladimir.medvedkin@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK patches and discussions

Archives are clonable:
	git clone --mirror http://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ http://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev


Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/ public-inbox