easybuilders / easybuild-easyconfigs

A collection of easyconfig files that describe which software to build using which build options with EasyBuild.
https://easybuild.io
GNU General Public License v2.0
374 stars 699 forks source link

OpenBLAS-0.3.20-GCC-11.3.0. LAPACK Test suite fails on a64fx (aarch64) #16513

Open agemuend opened 1 year ago

agemuend commented 1 year ago

As the subject says, the LAPACK Test suite fails with OpenBLAS-0.3.20-GCC-11.3.0. on a64fx:

Testing COMPLEX           Nonsymmetric-Generalized-Eigenvalue-Problem-driver-EIG/xeigtstc < cgd.in > cgd.out  CGV drivers:     41 out of   1092 tests failed to pass the threshold
  CGV drivers:     40 out of   1092 tests failed to pass the threshold
 passed: 8298
failing to pass the threshold: 81

[...]

Testing COMPLEX           RFP-linear-equation-routines-LIN/xlintstrfc < ctest_rfp.in > ctest_rfp.out   CTFSM auxiliary routine:     1 out of  7776 tests failed to pass the threshold
 passed: 5352
failing to pass the threshold: 1

[...]

Testing COMPLEX16          Nonsymmetric-Generalized-Eigenvalue-Problem-driver-EIG/xeigtstz < zgd.in > zgd.out  ZGV drivers:     41 out of   1092 tests failed to pass the threshold
  ZGV drivers:     40 out of   1092 tests failed to pass the threshold
 passed: 8298
failing to pass the threshold: 81

[...]

                        -->   LAPACK TESTING SUMMARY  <--
SUMMARY                 nb test run     numerical error         other error
================        ===========     =================       ================
REAL                    1308369         1       (0.000%)        0       (0.000%)
DOUBLE PRECISION        1316957         0       (0.000%)        0       (0.000%)
COMPLEX                 766356          82      (0.011%)        0       (0.000%)
COMPLEX16               774944          81      (0.010%)        0       (0.000%)

--> ALL PRECISIONS      4166626         164     (0.004%)        0       (0.000%)
agemuend commented 1 year ago

More details from cgd.out:

Tests of the Generalized Nonsymmetric Eigenvalue Problem Driver CGGEV

 LAPACK VERSION 3.9.0

 The following parameter values will be used:
    M:         2     6     8    10    12    20
    N:         2     6     8    10    12    20
    NB:        1
    NBMIN:     1
    NX:        1
    NS:        2
    MAXB:      1

 Relative machine underflow is taken to be    0.117549E-37
 Relative machine overflow  is taken to be    0.340282E+39
 Relative machine precision is taken to be    0.596046E-07

 Routines pass computational tests if test ratio is less than   10.00

 CGV routines passed the tests of the error exits (106 tests done)

 CGV -- Complex Generalized eigenvalue problem driver
 Matrix types (see CDRGEV for details):
 Special Matrices:                       (J'=transposed Jordan block)
   1=(0,0)  2=(I,0)  3=(0,I)  4=(I,I)  5=(J',J')  6=(diag(J',I), diag(I,J'))
 Diagonal Matrices:  ( D=diag(0,1,2,...) )
   7=(D,I)   9=(large*D, small*I)  11=(large*I, small*D)  13=(large*D, large*I)
   8=(I,D)  10=(small*D, large*I)  12=(small*I, large*D)  14=(small*D, small*I)
  15=(D, reversed D)
 Matrices Rotated by Random Orthogonal Matrices U, V:
  16=Transposed Jordan Blocks             19=geometric alpha, beta=0,1
  17=arithm. alpha&beta                   20=arithmetic alpha, beta=0,1
  18=clustered alpha, beta=0,1            21=random alpha, beta=0,1
 Large & Small Matrices:
  22=(large, small)   23=(small,large)    24=(small,small)    25=(large,large)
  26=random O(1) matrices.

 Tests performed:
 1 = max | ( b A - a B )'*l | / const.,
 2 = | |VR(i)| - 1 | / ulp,
 3 = max | ( b A - a B )*r | / const.
 4 = | |VL(i)| - 1 | / ulp,
 5 = 0 if W same no matter if r or l computed,
 6 = 0 if l same no matter if l computed,
 7 = 0 if r same no matter if r computed,

 Matrix order=    8, type=17, seed=3532,3167,3258,2741, result  5 is 8.389E+06
 Matrix order=    8, type=18, seed=1945,4022,1865,2917, result  5 is 8.389E+06
 Matrix order=    8, type=19, seed=  81,3302,2127,1893, result  5 is 8.389E+06
 Matrix order=    8, type=20, seed= 786,3466,1621, 869, result  5 is 8.389E+06
 Matrix order=    8, type=21, seed=2270,2402, 346,3941, result  5 is 8.389E+06
 Matrix order=    8, type=22, seed=1864,1549,2193,2613, result  5 is 8.389E+06
 Matrix order=    8, type=23, seed=2238,1771, 794,1773, result  5 is 8.389E+06
 Matrix order=    8, type=24, seed=1060,1095,1526,3813, result  5 is 8.389E+06
 Matrix order=    8, type=25, seed=3418,3932,2951,  29, result  5 is 8.389E+06
 Matrix order=    8, type=26, seed=1988,2884,2319,2197, result  5 is 8.389E+06
 Matrix order=   10, type=17, seed=1932,2747,1915,3445, result  5 is 8.389E+06
 Matrix order=   10, type=18, seed=3976, 520,2977,2757, result  5 is 8.389E+06
 Matrix order=   10, type=19, seed= 806,4093,1609,2693, result  5 is 8.389E+06
 Matrix order=   10, type=20, seed=3281,1827, 254,2629, result  5 is 8.389E+06
 Matrix order=   10, type=21, seed=1238,  15, 384,2565, result  5 is 8.389E+06
 Matrix order=   10, type=22, seed=3094,3351,2614,2525, result  5 is 8.389E+06
 Matrix order=   10, type=23, seed=2605, 629,2321,1285, result  5 is 8.389E+06
 Matrix order=   10, type=24, seed= 929,2687, 964,2925, result  5 is 8.389E+06
 Matrix order=   10, type=25, seed=1209,2652, 535,1813, result  5 is 8.389E+06
 Matrix order=   10, type=26, seed= 624,2762,2893, 509, result  5 is 8.389E+06
 Matrix order=   12, type=16, seed=3357,4041,1466,3309, result  5 is 8.389E+06
 Matrix order=   12, type=17, seed=2239,  68,3302,1037, result  5 is 8.389E+06
 Matrix order=   12, type=18, seed=1615,2331,2107,2557, result  5 is 8.389E+06
 Matrix order=   12, type=19, seed=1401, 178,4093, 253, result  5 is 8.389E+06
 Matrix order=   12, type=20, seed= 252,3709, 526,2045, result  5 is 8.389E+06
 Matrix order=   12, type=21, seed=1352, 392,3695,3837, result  5 is 8.389E+06
 Matrix order=   12, type=22, seed=1710,1543,1672,2973, result  5 is 8.389E+06
 Matrix order=   12, type=23, seed=2685, 174, 871,2549, result  5 is 8.389E+06
 Matrix order=   12, type=24, seed=2693,2404,3046,2957, result  5 is 8.389E+06
 Matrix order=   12, type=25, seed= 578, 723, 929,1637, result  5 is 8.389E+06
 Matrix order=   12, type=26, seed=2061,1512,1968, 125, result  5 is 8.389E+06
 Matrix order=   20, type=17, seed=1585,3902,3906,1293, result  5 is 8.389E+06
 Matrix order=   20, type=18, seed=1063,2113,3640,2685, result  5 is 8.389E+06
 Matrix order=   20, type=19, seed=2305,3879, 305, 381, result  5 is 8.389E+06
 Matrix order=   20, type=20, seed= 897,3616, 121,2173, result  5 is 8.389E+06
 Matrix order=   20, type=21, seed= 676,3851,3089,3965, result  5 is 8.389E+06
 Matrix order=   20, type=22, seed=1763,2855,1954,1469, result  5 is 8.389E+06
 Matrix order=   20, type=23, seed=1338,3437,3180,3285, result  5 is 8.389E+06
 Matrix order=   20, type=24, seed=3522,1685,3785, 813, result  5 is 8.389E+06
 Matrix order=   20, type=25, seed=2931,3978,3195,3781, result  5 is 8.389E+06
 Matrix order=   20, type=26, seed= 449,1038,1670,1437, result  5 is 8.389E+06
 CGV drivers:     41 out of   1092 tests failed to pass the threshold
boegel commented 1 year ago

@bartoldeman Any thoughts on this?

@agemuend Can you also share the output of eb --show-system-info?

agemuend commented 1 year ago

Sure

$ eb --show-system-info
System information (fujitsu03):

* OS:
  -> name: CentOS Linux
  -> type: Linux
  -> version: 8.3.2011
  -> platform name: aarch64-unknown-linux

* CPU:
  -> vendor: UNKNOWN
  -> architecture: AArch64
  -> family: ARM
  -> arch name: UNKNOWN (archspec is not installed?)
  -> model: UNKNOWN
  -> speed: None
  -> cores: 48
  -> features: asimd,asimdhp,asimdrdm,atomics,cpuid,crc32,dcpop,evtstrm,fcma,fp,fphp,sha1,sha2,sve

* software:
  -> glibc version: 2.28
  -> Python binary: /usr/bin/python3
  -> Python version: 3.6.8
bartoldeman commented 1 year ago

The failures look benign, it's all the same eigenvalue issue again. It may be possible to work around it, but I won't have much time this week.

For now I'd just bump the number from 150 to 200.