about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-09-12 07:46:11 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-09-12 07:54:47 -0700
commitef8adeb0416309082c41a1518caee6961b5c42e8 (patch)
tree1907bd459f82a962252cc5852bbee9025b3a99ad /ChangeLog
parenta166531fdf601560a0005479427f60d3173f8257 (diff)
downloadglibc-ef8adeb0416309082c41a1518caee6961b5c42e8.tar.gz
glibc-ef8adeb0416309082c41a1518caee6961b5c42e8.tar.xz
glibc-ef8adeb0416309082c41a1518caee6961b5c42e8.zip
x86: Add MathVec_Prefer_No_AVX512 to cpu-features [BZ #21967]
AVX512 functions in mathvec are used on machines with AVX512.  An AVX2
wrapper is also provided and it can be used when the AVX512 version
isn't profitable.  MathVec_Prefer_No_AVX512 is addded to cpu-features.
If glibc.tune.hwcaps=MathVec_Prefer_No_AVX512 is set in GLIBC_TUNABLES
environment variable, the AVX2 wrapper will be used.

Tested on x86-64 machines with and without AVX512.  Also verified
glibc.tune.hwcaps=MathVec_Prefer_No_AVX512 on AVX512 machine.

	[BZ #21967]
	* sysdeps/x86/cpu-features.h (bit_arch_MathVec_Prefer_No_AVX512):
	New.
	(index_arch_MathVec_Prefer_No_AVX512): Likewise.
	* sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)):
	Handle MathVec_Prefer_No_AVX512.
	* sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512.h
	(IFUNC_SELECTOR): Return AVX2 version if MathVec_Prefer_No_AVX512
	is set.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog12
1 files changed, 12 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 7f8432cb37..e6567be03e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2017-09-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #21967]
+	* sysdeps/x86/cpu-features.h (bit_arch_MathVec_Prefer_No_AVX512):
+	New.
+	(index_arch_MathVec_Prefer_No_AVX512): Likewise.
+	* sysdeps/x86/cpu-tunables.c (TUNABLE_CALLBACK (set_hwcaps)):
+	Handle MathVec_Prefer_No_AVX512.
+	* sysdeps/x86_64/fpu/multiarch/ifunc-mathvec-avx512.h
+	(IFUNC_SELECTOR): Return AVX2 version if MathVec_Prefer_No_AVX512
+	is set.
+
 2017-09-12  Samuel Thibault  <samuel.thibault@ens-lyon.org>
 
 	* posix/sched_primax.c (__sched_get_priority_max): Add