[v5,0/8] accelerate examples/l3fwd with NEON on ARM64 platform

Message ID 1499163845-6674-1-git-send-email-jianbo.liu@linaro.org
Headers show
Series
  • accelerate examples/l3fwd with NEON on ARM64 platform
Related show

Message

Jianbo Liu July 4, 2017, 10:23 a.m.
v5:
  - rebase to master
  Please apply after "move gcc version definition to	common header"
     http://www.dpdk.org/ml/archives/dev/2017-July/070031.html

v4:
  - add vcopyq_laneq_u32 for older version of gcc

v3:
  - remove unnecessary perfetch for rte_mbuf
  - fix typo in git log
  - Ashwin's suggestions for performance on ThunderX

v2:
  - change name of l3fwd_em_sse.h to l3fwd_em_sequential.h
  - add the times of hash multi-lookup for different Archs
  - performance tuning on ThunderX: prefetching, set NO_HASH_LOOKUP_MULTI ...

Jianbo Liu (8):
  examples/l3fwd: extract arch independent code from multi hash lookup
  examples/l3fwd: rename l3fwd_em_sse.h to l3fwd_em_sequential.h
  examples/l3fwd: extract common code from multi packet send
  examples/l3fwd: rearrange the code for lpm_l3fwd
  arch/arm: add vcopyq_laneq_u32 for old version of gcc
  examples/l3fwd: add neon support for l3fwd
  examples/l3fwd: add the times of hash multi-lookup for different Archs
  examples/l3fwd: change the guard macro name for header file

 examples/l3fwd/l3fwd_common.h                      | 293 +++++++++++++++++++++
 examples/l3fwd/l3fwd_em.c                          |   8 +-
 examples/l3fwd/l3fwd_em_hlm.h                      | 218 +++++++++++++++
 examples/l3fwd/l3fwd_em_hlm_neon.h                 |  74 ++++++
 examples/l3fwd/l3fwd_em_hlm_sse.h                  | 276 +------------------
 .../{l3fwd_em_sse.h => l3fwd_em_sequential.h}      |  24 +-
 examples/l3fwd/l3fwd_lpm.c                         |  87 +++++-
 examples/l3fwd/l3fwd_lpm.h                         |  26 +-
 examples/l3fwd/l3fwd_lpm_neon.h                    | 193 ++++++++++++++
 examples/l3fwd/l3fwd_lpm_sse.h                     |  66 -----
 examples/l3fwd/l3fwd_neon.h                        | 259 ++++++++++++++++++
 examples/l3fwd/l3fwd_sse.h                         | 261 +-----------------
 lib/librte_eal/common/include/arch/arm/rte_vect.h  |   9 +
 13 files changed, 1165 insertions(+), 629 deletions(-)
 create mode 100644 examples/l3fwd/l3fwd_common.h
 create mode 100644 examples/l3fwd/l3fwd_em_hlm.h
 create mode 100644 examples/l3fwd/l3fwd_em_hlm_neon.h
 rename examples/l3fwd/{l3fwd_em_sse.h => l3fwd_em_sequential.h} (88%)
 create mode 100644 examples/l3fwd/l3fwd_lpm_neon.h
 create mode 100644 examples/l3fwd/l3fwd_neon.h

-- 
1.8.3.1

Comments

Thomas Monjalon July 4, 2017, 3:11 p.m. | #1
> Jianbo Liu (8):

>   examples/l3fwd: extract arch independent code from multi hash lookup

>   examples/l3fwd: rename l3fwd_em_sse.h to l3fwd_em_sequential.h

>   examples/l3fwd: extract common code from multi packet send

>   examples/l3fwd: rearrange the code for lpm_l3fwd

>   arch/arm: add vcopyq_laneq_u32 for old version of gcc

>   examples/l3fwd: add neon support for l3fwd

>   examples/l3fwd: add the times of hash multi-lookup for different Archs

>   examples/l3fwd: change the guard macro name for header file


Applied and rebased, thanks