/MATH_LIBRARY
Controls selection of math library routines to provide accurate or
fast results for VSI Fortran intrinsic functions, such as SQRT.
The default is /MATH_LIBRARY=ACCURATE.
This qualifier applies only to IEEE data types (when you specify
/FLOAT=IEEE_FLOAT).
You can only specify one of the qualifier options.
ACCURATE
Causes the compiler to produce the very accurate results and
error checking expected of quality compiler products. It uses
the standard set of math library routines for the applicable
intrinsics.
The standard math library routines are designed to obtain very
accurate "near correctly rounded" results and provide the
robustness needed to check for IEEE exceptional argument values,
rather than achieve the fastest possible run-time execution
speed. Using /MATH_LIBRARY=ACCURATE allows user control of
arithmetic exception handling with the /IEEE_MODE qualifier.
FAST
Causes the compiler to use versions of certain math library
routines that perform faster computations than the standard, more
accurate math library routines, but with slightly less fractional
accuracy and less reliable arithmetic exception handling. Using
/MATH_LIBRARY=FAST allows certain math library functions to get
significant performance improvements when the applicable
intrinsic function is used.
If you specify /MATH_LIBRARY=FAST, the math library routines do
not necessarily check for IEEE exceptional values and the
/IEEE_MODE qualifier is ignored.
When you use MATH_LIBRARY=FAST, you should carefully check the
calculated output from your program to verify it is not relying
on the full fractional accuracy of the floating-point data type
to produce correct results. You should also verify that the
calculated output is not producing unexpected exceptional values
(exception handling is indeterminate).
Programs that do not produce acceptable results with
/MATH_LIBRARY=FAST and single-precision data might produce
acceptable results if they are modified (or compiled) to use
double-precision data.
The specific intrinsic routines that have special fast math
routines depend on the version of the OpenVMS Alpha operating
system in use. Allowed error bounds vary with each routine.