Hello! > > For the math functions, this is normally more a libc feature, so you might > > get very different results on different OS. Then again, by using > > -ffast-math, you allow the math functions to return any random value, so I > > can think of ways to make it even faster ;-) > > Also for math functions you can simply substitute the Intel compilers one > (GCC uses the Microsoft ones) by linking against libimf. You can also make > use of their vectorized variants from GCC by specifying -mveclibabi=svml > and link against libimf (the GCC autovectorizer will then use the routines > from the Intel compiler math library). That makes a huge difference for > code using functions from math.h.
However, even with -mveclibabi=svml, we still don't vectorize the call to sincos ... >From [1], it looks that the transcendental performance mostly depends on math library code. I wonder if libimf handles calls with AVX arguments to vectorized functions, so we can extend libimf support code in gcc. [1] http://willus.com/ccomp_benchmark2.shtml?p19 Uros.