[dpdk-dev] [PATCH v4 0/3] add lpm support for NEON

Kobylinski, MichalX michalx.kobylinski at intel.com
Tue Feb 16 14:27:02 CET 2016



> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Jerin Jacob
> Sent: Friday, February 12, 2016 1:29 PM
> To: dev at dpdk.org
> Cc: viktorin at rehivetech.com
> Subject: [dpdk-dev] [PATCH v4 0/3] add lpm support for NEON
> 
> - This patch enables lpm for ARM
> - Used architecture agnostic xmm_t to represent 128 bit SIMD variable in
> rte_lpm_lookupx4 API definition
> - Tested on Juno and Thunderx boards
> - Tested and verified the changes with following DPDK unit test cases
>         --lpm_autotest
>         --lpm6_autotest
> v1..v2
> - make rte_lpm_lookupx4 API definition architecture agnostic
> - vect_* abstraction scope reduce to only app/test as this abstraction used only
> to load/store and set vectors in test application which is the consumer of
> rte_lpm_lookupx4 like API
> - support for armv7 apart from armv8
> - taken changes from Jianbo's lpm patches
> 
> v2..v3
> - add Acked-by for 0001-lpm-make-rte_lpm_lookupx4-API-definition-
> architectur.patch
> - re-based to DPDK 2.2
> -- fixed the conflict in config/defconfig_arm-armv7a-linuxapp-gcc and
> MAINTAINERS file
> 
> v3..v4
> -Instead of defaulting the lpm implementation to SSE, SSE implementation kept
> under RTE_ARCH_X86 conditional compilation check as suggested by Thomas
> 
> Jerin Jacob (3):
>   lpm: make rte_lpm_lookupx4 API definition architecture agnostic
>   lpm: add support for NEON
>   maintainers: claim responsibility for arm64 specific files of hash and
>     lpm
> 
>  MAINTAINERS                                |   3 +
>  app/test/test_lpm.c                        |  21 ++--
>  app/test/test_xmmt_ops.h                   |  67 +++++++++++++
>  config/defconfig_arm-armv7a-linuxapp-gcc   |   3 -
>  config/defconfig_arm64-armv8a-linuxapp-gcc |   3 -
>  lib/librte_lpm/Makefile                    |   6 ++
>  lib/librte_lpm/rte_lpm.h                   |  99 ++-----------------
>  lib/librte_lpm/rte_lpm_neon.h              | 148 +++++++++++++++++++++++++++++
>  lib/librte_lpm/rte_lpm_sse.h               | 143 ++++++++++++++++++++++++++++
>  9 files changed, 386 insertions(+), 107 deletions(-)  create mode 100644
> app/test/test_xmmt_ops.h  create mode 100644 lib/librte_lpm/rte_lpm_neon.h
> create mode 100644 lib/librte_lpm/rte_lpm_sse.h
> 
> --
> 2.1.0

Hi Jerin,
Are you planning increase next_hop field for ARM? I extended next_hop field from 8 bits to 24 bits and created structure to configure LPM for x86.
Please look at my patchset with proposal increase next_hop field and structure to configure.

http://patchwork.dpdk.org/dev/patchwork/patch/10249/
http://patchwork.dpdk.org/dev/patchwork/patch/10250/

Best Regards,
Michal



More information about the dev mailing list