diff options
author | Shawn Landden <shawn@git.icu> | 2019-07-04 17:56:46 -0400 |
---|---|---|
committer | Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com> | 2020-02-19 17:29:23 -0300 |
commit | 4068846e1e364b2441b93cf3d731a6599596726a (patch) | |
tree | 2b92d418d2f8db7a81a63029c424e1deffed4fb6 /NEWS | |
parent | d91313ed6fb18acfb4f7b0399fd18e87f5c00221 (diff) | |
download | glibc-4068846e1e364b2441b93cf3d731a6599596726a.tar.gz glibc-4068846e1e364b2441b93cf3d731a6599596726a.tar.xz glibc-4068846e1e364b2441b93cf3d731a6599596726a.zip |
PPC64: Add libmvec SIMD single-precision power function [BZ #24210]
Based off the ./sysdeps/ieee754/flt-32/powf.c implementation, and thus provides identical results. Unlike other libmvec functions, this sets the underflow and overflow bits. The caller can check these flags, and possibly re-run the calculations with scalar powf to figure out what is causing the overflow or underflow. I may have not normalized the data for benchmarking this properly, but operating only on floats between 0.5 and 1 I get the following: Running 20 times over 32MiB vector: mean 307.659767 (sd 0.203217) scalar: mean 221.837088 (sd 0.032256) And with random data there is a decrease in performance: vector: mean 265.366371 (sd 0.000626) scalar: mean 279.598078 (sd 0.025592) Reviewed-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/NEWS b/NEWS index 2d1002a489..81f12f6038 100644 --- a/NEWS +++ b/NEWS @@ -270,6 +270,7 @@ Major new features: - single-precision sincos: sincosf - double-precision exp: exp - single-precision exp: expf + - single-precision pow: powf GCC support for auto-vectorization of functions on PPC64 is not yet available. Until that is done, the new vector math functions are |