Topic: The following floating-point exceptions are signalling: IEEE_UNDERFLOW

Hi, I'm new to Fortran. I have got "The following floating-point exceptions are signalling: IEEE_UNDERFLOW_FLAG IEEE_DENORMAL
" error when I build and execute the existing code in Windows 64 bit OS. It seems the code is working fine with Windows32 bit OS, Please let me know how to resolve the above error.

Result also differ from 32 to 64 bit OS.

Thanks

Re: The following floating-point exceptions are signalling: IEEE_UNDERFLOW

Both the warnings issued are indicative of numerical issues with the source code.  An "underflow"  implies that the result of an arithmetic operation is smaller than the smallest representable number, and the "denormal" warning is most likely related to the underflow issue itself.

The fact that results differ between 32- and 64-bit code is also not surprising since the warnings are the result of numerical instability.  If your code relies heavily on, for example, the exponential function, it may be the source of the disagreement.  You'll need to do some debugging to track down why the warnings are being produced. I would suggest: a) disabling all optimizations and b) enable runtime diagnostics in the Project Options window's Fortran tab.

Jeff Armstrong
Approximatrix, LLC

Re: The following floating-point exceptions are signalling: IEEE_UNDERFLOW

I am not clear whether you are seeing differences between 32 and 64 bit codes compiled and run under 64 bit windows, or
are comparing 32 bit and 64 bit windows.

Without seeing some code, it is difficult to comment on whether the differences between 32 bit and 64 bit are significant or if there is a bug in the code.

The underflow message can be eliminated by using the option -fno-underflow-warning but I suggest you try to understand where the overflow is occurring first.

--
David