BatchDrake / sigutils

Small signal processing utility library
https://batchdrake.github.io/sigutils
GNU General Public License v3.0
71 stars 29 forks source link

Release optimization options #37

Open antoniovazquezblanco opened 1 year ago

antoniovazquezblanco commented 1 year ago

Currently -O3 -ffast-math -s for release builds. Do we want to throw it ot the window and use -Ofast?

https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html

BatchDrake commented 1 year ago

I completely forgot about -ffast-math (maybe because I always build in debug mode), and now I am worried about it. While nobody actually complained, -ffast-math is a delicate subject in the sense that reorders math instructions in a way that is not completely IEEE-compliant. This may affect stuff like Kahan summations, in which the order is important.

I am leaving this issue open so I do not forget to look into it. But some thorough testing will be necessary here.