Floating-point Precision

In most cases, as floating-point precision increases, so does processor execution time. The following table shows the floating-point precision optimization options along with a description of each option's precision vs. speed.






Strict ANSI C and IEEE 754 Floating Point (subset of -Za or -ansi) very precise; slows your application down



Strict ANSI C and IEEE 754. Slower and more precise than -Op.


Not available

Changes the default size of the long double type from 64 to 80 bits. This option introduces a number of incompatibilities with other files compiled without this option and with calls to library routines. Therefore, Intel recommends that the use of long double variables be local to a single file when you compile with this option.

This option is available on Intel® Extended Memory 64 Technology (Intel® EM64T) systems .



IA-32 only. Almost, but not quite, as precise as ANSI; faster than ANSI. All but the most costly operations are done according to ANSI.



IA-32 only. By default, the Intel compiler converts division operations into reciprocal multiply operations, which is less precise but much faster. This option disables the floating point division-to-multiplication optimization.

This option is available on Intel® EM64T-based systems.



IA-32 only. Specifies required number of bits of precision: 32, 64, or 80. Rounds to n precision, where n=[32|64|80].

This option is available on Intel® EM64T-based systems.



IA-32 only. Removes code that truncates during float to integer conversions.

Improves the performance of code that requires floating-point-to-integer conversions.

Compiler Option Quick Reference