On Monday, 31 December 2018 at 13:24:29 UTC, kinke wrote:
On Sunday, 30 December 2018 at 13:39:44 UTC, Guillaume Piolat
wrote:
Been waiting for an exp() rewrite. And Boost-licensed! I'm
using expf() from whatever libc is shipped and the variability
of results and lack of control is annoying.
exp != {ld,fr}exp. Phobos includes a proper single/double
precision exp implementation since v2.082 and is Boost
licensed...
llvm_exp (defers to C runtime) gives considerable speed
improvement over `std.math.exp`.
I've tested `expf` form the VS runtime exhaustively for 32-bit
`float` and it showed the relative accuracy was within < 0.0002%
of std.math.exp,
It's not concerning at all, what is more is the variability of C
runtime though vs a D function. Looking for speed AND control :)