[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: amd64 arch and optimization flags?




> this is dangerous it changes results, sometimes significantly (e.g. for
> complex numbers), only use if you don't care about correctness or have
> verified its still correct.

IME, audio processing software can get away with it. Csound and its 400+ library of opcodes has been built with this option and I have had no complaints yet.
Quite likely yes.
What is dangerous about this options? I see a warning in the gcc docs,
Floating point numbers are an approximation of the real numbers. IEEE 754 defines the format of the floating point numbers (on all common modern platforms) and also sets rules for how accurate that approximation should be and how exceptional conditions should be handled.

-ffast-math tells the compiler that you are more interested in speed than accuracy, repeatability and handling of exceptional conditions so it may use methods that don't follow the precise rules laid down in IEEE 754

>but how can I know if my program relies "on a precise definition of IEEE
>floating point"?
With difficulty, you really need to understand what exactly the code is doing and how senstive it is to accuracy in the calculations.


Reply to: