crypto/aesni_gcm: fix performance issue
PATCH 1/1 crypto/aesni_gcm: fix performance issue
This patch fixes the aesni_gcm performance issue on systems with AVX512 CPU flag presented but with VAES CPU flag missing, such as Skylake.
--- drivers/crypto/aesni_gcm/aesni_gcm_pmd.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
drivers/crypto/aesni_gcm/aesni_gcm_pmd.c +8 -2
@@ -842,8 +842,14 @@ aesni_gcm_create(const char *name,init_mb_mgr_avx2 (mb_mgr);break ;case RTE_AESNI_GCM_AVX512 : - dev->feature_flags |=RTE_CRYPTODEV_FF_CPU_AVX512 ; -init_mb_mgr_avx512 (mb_mgr); +if (rte_cpu_get_flag_enabled (RTE_CPUFLAG_VAES )) { + dev->feature_flags |=RTE_CRYPTODEV_FF_CPU_AVX512 ; +init_mb_mgr_avx512 (mb_mgr); + }else { + dev->feature_flags |=RTE_CRYPTODEV_FF_CPU_AVX2 ; +init_mb_mgr_avx2 (mb_mgr); + vector_mode =RTE_AESNI_GCM_AVX2 ; + }break ;default :AESNI_GCM_LOG (ERR ,"Unsupported vector mode %u\n" , vector_mode);
Signature · 1 line
2.17.1
PATCH v2 1/1 crypto/aesni_gcm: fix performance issue
This patch fixes the aesni_gcm performance issue on systems with AVX512 CPU flag presented but with VAES CPU flag missing, such as Skylake.
---
v2: Checkpatch fix
drivers/crypto/aesni_gcm/aesni_gcm_pmd.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
drivers/crypto/aesni_gcm/aesni_gcm_pmd.c +8 -2
@@ -842,8 +842,14 @@ aesni_gcm_create(const char *name,init_mb_mgr_avx2 (mb_mgr);break ;case RTE_AESNI_GCM_AVX512 : - dev->feature_flags |=RTE_CRYPTODEV_FF_CPU_AVX512 ; -init_mb_mgr_avx512 (mb_mgr); +if (rte_cpu_get_flag_enabled (RTE_CPUFLAG_VAES )) { + dev->feature_flags |=RTE_CRYPTODEV_FF_CPU_AVX512 ; +init_mb_mgr_avx512 (mb_mgr); + }else { + dev->feature_flags |=RTE_CRYPTODEV_FF_CPU_AVX2 ; +init_mb_mgr_avx2 (mb_mgr); + vector_mode =RTE_AESNI_GCM_AVX2 ; + }break ;default :AESNI_GCM_LOG (ERR ,"Unsupported vector mode %u\n" , vector_mode);
Signature · 1 line
2.17.1
Quoted 8 lines
-----Original Message-----
From: Ji, Kai <[email protected]>
Sent: Tuesday, June 29, 2021 4:19 PM
To: [email protected]
Cc: Zhang, Roy Fan <[email protected]>; Ji, Kai <[email protected]>; De Lara Guarch, Pablo <[email protected]>
Subject: [dpdk-dev v2]crypto/aesni_gcm: fix performance issue
Quoted 7 lines
This patch fixes the
aesni_gcmperformance issue on systems with AVX512 CPU flag presented but with VAES CPU flag missing, such as Skylake.Fixes 81fe96a0cece ("crypto/aesni_gcm: use architecture independent API")Signed-off-by Kai Ji <[email protected]>
Akhil Goyal
AppliedQuoted 11 lines
Quoted 5 lines
This patch fixes the
aesni_gcmperformance issue on systems with AVX512 CPU flag presented but with VAES CPU flag missing, such as Skylake.Fixes 81fe96a0cece ("crypto/aesni_gcm: use architecture independentAPI")
Quoted 3 lines
Signed-off-by Kai Ji <[email protected]>Acked-by Fan Zhang <[email protected]>
Applied to dpdk-next-crypto
Thanks