about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-22 08:01:38 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-22 08:02:58 -0700
commitfe596486d694e657413d0d4c5a04598674ff71b1 (patch)
treebaa82d03de8d66e51415ff7e0489ef7401126195 /ChangeLog
parent7eda65f69e0e4533b76ca4614fe516de03fe2b3a (diff)
downloadglibc-fe596486d694e657413d0d4c5a04598674ff71b1.tar.gz
glibc-fe596486d694e657413d0d4c5a04598674ff71b1.tar.xz
glibc-fe596486d694e657413d0d4c5a04598674ff71b1.zip
i386: Replace assembly versions of e_logf with generic e_logf.c
This patch replaces i386 assembly versions of e_logf with generic
e_logf.c.  For workload-spec2017.wrf, on Nehalem, it improves
performance by:

                           Before            After     Improvement
reciprocal-throughput      73.3865          40.0454       83%
latency                    90.0985          54.4479       65%

On Skylake, it improves performance by:

                           Before            After     Improvement
reciprocal-throughput      75.1384          22.1452       239%
latency                    91.9441          50.7925       81%

On IvyBridge with --disable-multi-arch, it improves performance by:

                           Before            After     Improvement
reciprocal-throughput      84.5575          28.7879       193%
latency                    103.971          57.5231       80%

	* sysdeps/i386/fpu/e_logf.S: Removed.
	* sysdeps/i386/fpu/e_logf_data.c: Likewise.
	* sysdeps/i386/fpu/w_logf.c: Likewise.
	* sysdeps/i386/i686/fpu/e_logf.S: Likewise.
	* sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_logf.c.
	* sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise.
	* sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines):
	Add e_logf-sse2.
	(CFLAGS-e_logf-sse2.c): New.
	* sysdeps/i386/i686/fpu/multiarch/e_logf-sse2.c: New file.
	* sysdeps/i386/i686/fpu/multiarch/e_logf.c: Likewise.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog14
1 files changed, 14 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 2100c0a0df..347bdb7c77 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,19 @@
 2017-10-22  H.J. Lu  <hongjiu.lu@intel.com>
 
+	* sysdeps/i386/fpu/e_logf.S: Removed.
+	* sysdeps/i386/fpu/e_logf_data.c: Likewise.
+	* sysdeps/i386/fpu/w_logf.c: Likewise.
+	* sysdeps/i386/i686/fpu/e_logf.S: Likewise.
+	* sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_logf.c.
+	* sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise.
+	* sysdeps/i386/i686/fpu/multiarch/Makefile (libm-sysdep_routines):
+	Add e_logf-sse2.
+	(CFLAGS-e_logf-sse2.c): New.
+	* sysdeps/i386/i686/fpu/multiarch/e_logf-sse2.c: New file.
+	* sysdeps/i386/i686/fpu/multiarch/e_logf.c: Likewise.
+
+2017-10-22  H.J. Lu  <hongjiu.lu@intel.com>
+
 	* sysdeps/i386/fpu/e_exp2f.S: Removed.
 	* sysdeps/i386/fpu/w_exp2f.c: Likewise.
 	* sysdeps/i386/fpu/libm-test-ulps: Updated for generic e_exp2f.c.