diff options
Diffstat (limited to 'src/plugins/dpdk/device')
-rw-r--r-- | src/plugins/dpdk/device/init.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/plugins/dpdk/device/init.c b/src/plugins/dpdk/device/init.c index 19d664a5778..2874167665f 100644 --- a/src/plugins/dpdk/device/init.c +++ b/src/plugins/dpdk/device/init.c @@ -30,6 +30,7 @@ #include <vlib/vmbus/vmbus.h> #include <rte_ring.h> +#include <rte_vect.h> #include <stdio.h> #include <stdlib.h> @@ -1678,6 +1679,10 @@ dpdk_config (vlib_main_t * vm, unformat_input_t * input) ret = rte_eal_init (vec_len (conf->eal_init_args), (char **) conf->eal_init_args); + /* enable the AVX-512 vPMDs in DPDK */ + if (clib_cpu_supports_avx512_bitalg ()) + rte_vect_set_max_simd_bitwidth (RTE_VECT_SIMD_512); + /* lazy umount hugepages */ umount2 ((char *) huge_dir_path, MNT_DETACH); rmdir ((char *) huge_dir_path); |