Regards, /Ruifeng
> -----Original Message----- > From: Honnappa Nagarahalli <honnappa.nagaraha...@arm.com> > Sent: 2019年3月11日 23:33 > To: Ruifeng Wang (Arm Technology China) <ruifeng.w...@arm.com>; > wenzhuo...@intel.com; jingjing...@intel.com; > bernard.iremon...@intel.com > Cc: dev@dpdk.org; jer...@marvell.com; hemant.agra...@nxp.com; nd > <n...@arm.com>; Ruifeng Wang (Arm Technology China) > <ruifeng.w...@arm.com>; Honnappa Nagarahalli > <honnappa.nagaraha...@arm.com>; nd <n...@arm.com> > Subject: RE: [PATCH v1] app/testpmd: optimized MAC swap by using neon > intrinsics > > > Improved MAC swap performance for ARM platform. > > The improvement was achieved by using neon intrinsics to save CPU > > cycles and doing swap for four packets at a time. > > The optimization had 15% - 20% throughput boost in testpmd MAC swap > mode. > > > > Signed-off-by: Ruifeng Wang <ruifeng.w...@arm.com> > > Reviewed-by: Gavin Hu <gavin...@arm.com> > > Reviewed-by: Phil Yang <phil.y...@arm.com> > > --- > > app/test-pmd/macswap.c | 4 +- > > app/test-pmd/macswap_neon.h | 93 > > +++++++++++++++++++++++++++++++++++++++++++++ > > 2 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 > > app/test- pmd/macswap_neon.h > > > > diff --git a/app/test-pmd/macswap.c b/app/test-pmd/macswap.c index > > cbb41b7..71af916 100644 > > --- a/app/test-pmd/macswap.c > > +++ b/app/test-pmd/macswap.c > > @@ -66,8 +66,10 @@ > > #include <rte_flow.h> > > > > #include "testpmd.h" > > -#ifdef RTE_ARCH_X86 > > +#if defined(RTE_ARCH_X86) > > #include "macswap_sse.h" > > +#elif defined(RTE_MACHINE_CPUFLAG_NEON) #include > "macswap_neon.h" > > #else > > #include "macswap.h" > > #endif > > diff --git a/app/test-pmd/macswap_neon.h b/app/test- > pmd/macswap_neon.h > > new file mode 100644 index 0000000..bad1b9b > > --- /dev/null > > +++ b/app/test-pmd/macswap_neon.h > > @@ -0,0 +1,93 @@ > > +/* SPDX-License-Identifier: BSD-3-Clause > > + * Copyright(c) 2019 Arm Limited > This change is derived from Intel's work in macswap_sse.h. Can you please > add a header similar to lib/librte_lpm/rte_lpm_neon.h? > Sure. Will update file header in v2. Thanks for your suggestion. > > + */ > > + > > +#ifndef _MACSWAP_NEON_H_ > > +#define _MACSWAP_NEON_H_ > > + > > <snip>