1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-05 19:35:52 +03:00

x86: Don't set Prefer_No_AVX512 for processors with AVX512 and AVX-VNNI

Don't set Prefer_No_AVX512 on processors with AVX512 and AVX-VNNI since
they won't lower CPU frequency when ZMM load and store instructions are
used.
This commit is contained in:
H.J. Lu
2021-12-06 07:14:12 -08:00
parent a329f68f2e
commit ceeffe968c

View File

@@ -538,8 +538,11 @@ init_cpu_features (struct cpu_features *cpu_features)
|= bit_arch_Prefer_No_VZEROUPPER; |= bit_arch_Prefer_No_VZEROUPPER;
else else
{ {
cpu_features->preferred[index_arch_Prefer_No_AVX512] /* Processors with AVX512 and AVX-VNNI won't lower CPU frequency
|= bit_arch_Prefer_No_AVX512; when ZMM load and store instructions are used. */
if (!CPU_FEATURES_CPU_P (cpu_features, AVX_VNNI))
cpu_features->preferred[index_arch_Prefer_No_AVX512]
|= bit_arch_Prefer_No_AVX512;
/* Avoid RTM abort triggered by VZEROUPPER inside a /* Avoid RTM abort triggered by VZEROUPPER inside a
transactionally executing RTM region. */ transactionally executing RTM region. */