Yes, that explains part of it, it seems Julia doesn’t have fast (less accurate) versions for core math functions. I’m not sure, but people here know more, I’d love also to hear from others.
The following table compares run times of four math functions in Julia and Fortran (ifort), which asserts my assumptions. Allocations in all Julia versions are (2 allocations: 76.29 MiB).
| Function | Julia Times | Julia (Yeppp) | Fortran Times |
|---|---|---|---|
| sin | 78.356 ms | 27.854 ms | 12.9999999E-03 |
| cos | 72.389 ms | 26.460 ms | 15.0000000E-03 |
| exp | 92.180 ms | 23.605 ms | 12.9999999E-03 |
| norm | 23.066 ms | – | 4.9999999E-03 |
EDIT:
Corrected results after removing allocations as suggested by @Elrod and @Sukera:
| Function | Julia Times | Julia (Yeppp) | Fortran Times |
|---|---|---|---|
| sin | 58.230 ms | 15.578 ms | 12.9999999E-03 |
| cos | 60.838 ms | 14.081 ms | 15.0000000E-03 |
| exp | 80.156 ms | 11.975 ms | 12.9999999E-03 |
| norm | 5.381 ms | – | 4.9999999E-03 |
Yeppp seems really promising, but we still need fast pure Julia versions of these functions for scalar inputs.