The `-ffast-math` (or a similarly-named) compiler option trading precision and adherence to the IEEE 754 floating point standard in favor of execution speed
Most compilers have an option for turning floating-point-related optimizations which sacrifice computational precision and/or adherence to the costlier corner-cases of the IEEE 754 floating-point standard - in favor of better execution speed.
- For gcc and clang, this option is named
-ffast-math
(and there are sub-options) - For nvcc, the name is
--use-fast-math
- For OpenCL compilation, the name is
-cl-fast-relaxed-math
For more information: What does gcc's ffast-math actually do?