HI,diferente comportamiento de matemáticas de redondeo entre Linux, Mac OS X y Windows
he desarrollado un código mixto C/C++, con algunos cálculos numéricos intensivos. Cuando estoy compilado en Linux y Mac OS X obtengo resultados muy similares después de que finaliza la simulación. En Windows, el programa compila también, pero obtengo resultados muy diferentes y, a veces, el programa no parece funcionar.
Utilicé compiladores de GNU en todos los sistemas. Un amigo me recomendó que agregue -frounding-math y ahora la versión de Windows parece funcionar más estable, pero Linux y Os X, sus resultados, no cambian para nada.
¿Podría recomendar otras opciones para obtener más concordancia entre las versiones de Win y Linux/OSX?
Gracias
P.D. También intenté -O0 (sin optimizaciones) y especificó -m32
Linux y OS X ambos usan GCC, por lo que esperaría exactamente los mismos resultados, siempre que ambos se ejecutaran en la misma arquitectura de procesador. ¿Acabas de obtener resultados "similares" allí? Si es así, parece que algo de azar se inyecta en tus cálculos. ¿Alguna variable no inicializada? –