I am recompiling a computational program created in Visual Studio 2012 with Intel compiler from Parallel Studio 2017. The Visual Studio project has the floating point model set to /fp:precise In turn, I made sure it's also set to /fp:precise and /fp:source under Floating point expression evaluation. However, the outputs can still differ by 10^-5. In certain instances, the outputs differ by 10^5 with the original value in the neighborhood of 10^5. What can I do to make the floating number output match closer ? I even disabled the use of MKL and it was not helping.
We would need more information on your platform choice etc. If I remember correctly, if you targeted 32-bit mode with Visual Studio, the default should resemble ICL with options /arch:IA32 /fp:double.
ICL /fp:source is closest to MSVC++ /fp:fast which ought to get you defaulted to equivalent of /arch:SSE2.
There is also ICL /fp:consistent. I don't know if that is intended to help match MSVC++.
I hope you check at least the build log to see if the options you intend are echoed there. Presumably, if you make multiple settings of /fp: the last one should rule.