by donaldsmith » Fri Jul 22, 2011 4:46 am
In addition, LAPACK, version 3.0, introduced new routines which rely on IEEE-754 compliance. Refer to the Installation Guide for complete details. As a result, two settings were added to LAPACK/SRC/ilaenv.f to denote IEEE-754 compliance for NaN and infinity arithmetic, respectively. By default, ILAENV assumes an IEEE machine and does a test for IEEE-754 compliance. If you are installing LAPACK on a non-IEEE machine, you MUST modify ILAENV, as this test inside ILAENV will crash! Note that there are also specialized testing/timing versions of ILAENV located in LAPACK/TESTING/LIN/, LAPACK/TESTING/EIG/, LAPACK/TIMING/LIN/, and LAPACK/TIMING/EIG/, that must also be modified. Be aware that some compilers have IEEE-754 compliance by default, and some compilers require a separate compiler flag.
Testing failures can be divided into two categories. Minor testing failures, and major testing failures. A minor testing failure is one in which the test ratio reported in the LAPACK/TESTING/.out file slightly exceeds the threshold (specified in the associated LAPACK/TESTING/.in file). The cause of such failures can mainly be attributed to differences in the implementation of math libraries (square root, absolute value, complex division, complex absolute value, etc). These failures are negligible, and do not affect the proper functioning of the library.