numam-dpdk/drivers/net/i40e
Xiaoyun Li c11f654042 net/i40e: add option to use latest vector path
For IA, the AVX2 vector path is only recommended to be used on later
platforms (identified by AVX512 support, like SKL etc.) This is because
performance benchmark shows downgrade when running AVX2 vector path on
early platform (BDW/HSW) in some cases. But we still observe perf gain
with some real work loading.

So this patch introduced the new devarg use-latest-supported-vec to
force the driver always selecting the latest supported vec path. Then
apps are able to take AVX2 path on early platforms. And this logic can
be re-used if we will have AVX512 vec path in future.

This patch only affects IA platforms. The selected vec path would be
like the following:
  Without devarg/devarg = 0:
  Machine	vPMD
  AVX512F	AVX2
  AVX2	SSE4.2
  SSE4.2	SSE4.2
  <SSE4.2	Not Supported

  With devarg = 1
  Machine	vPMD
  AVX512F	AVX2
  AVX2	AVX2
  SSE4.2	SSE4.2
  <SSE4.2	Not Supported

Other platforms can also apply the same logic if necessary in future.

Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2018-09-28 01:41:01 +02:00
..
base net/i40e: use -Wno-error=format-security for meson 2018-09-17 12:18:13 +02:00
i40e_ethdev_vf.c ethdev: make default behavior CRC strip on Rx 2018-09-14 20:08:41 +02:00
i40e_ethdev.c net/i40e: add option to use latest vector path 2018-09-28 01:41:01 +02:00
i40e_ethdev.h net/i40e: add option to use latest vector path 2018-09-28 01:41:01 +02:00
i40e_fdir.c net/i40e: revert fix of flow director check 2018-08-01 15:36:32 +02:00
i40e_flow.c net/i40e: remove summarized global register change info 2018-07-03 01:35:58 +02:00
i40e_logs.h drivers: use SPDX tag for Intel copyright files 2018-01-04 22:41:39 +01:00
i40e_pf.c ethdev: separate driver APIs 2018-01-22 01:26:49 +01:00
i40e_pf.h net/i40e: support AVF basic interface 2018-01-16 18:47:49 +01:00
i40e_regs.h drivers: use SPDX tag for Intel copyright files 2018-01-04 22:41:39 +01:00
i40e_rxtx_vec_altivec.c ethdev: separate driver APIs 2018-01-22 01:26:49 +01:00
i40e_rxtx_vec_avx2.c net/i40e: fix rearm check in AVX2 Rx 2018-08-01 02:41:29 +02:00
i40e_rxtx_vec_common.h net/i40e: remove invalid comment 2018-09-14 20:19:57 +02:00
i40e_rxtx_vec_neon.c net/i40e: convert to SPDX license tag 2018-05-25 12:32:00 +02:00
i40e_rxtx_vec_sse.c ethdev: separate driver APIs 2018-01-22 01:26:49 +01:00
i40e_rxtx.c net/i40e: add option to use latest vector path 2018-09-28 01:41:01 +02:00
i40e_rxtx.h net/i40e: check illegal packets 2018-07-03 01:35:58 +02:00
i40e_tm.c drivers: use SPDX tag for Intel copyright files 2018-01-04 22:41:39 +01:00
i40e_vf_representor.c net/i40e: remove dependency on old Rx flags 2018-05-23 00:35:01 +02:00
Makefile net/i40e: add support for representor ports 2018-04-27 18:00:57 +01:00
meson.build net/i40e: fix missing defines for non-AVX build 2018-05-08 22:14:07 +02:00
rte_pmd_i40e_version.map net/i40e: support input set configuration 2018-01-16 18:47:49 +01:00
rte_pmd_i40e.c net/i40e: fix packet type parsing with DDP 2018-07-23 23:55:26 +02:00
rte_pmd_i40e.h net/i40e: add support for representor ports 2018-04-27 18:00:57 +01:00