Hi,

I'm building our software stack on a new Intel Ice Lake server (Xeon Gold 6342 CPU @ 2.80GHz 24 cores dual-socket) running AlmaLinux 8.4 (RHEL 8.4 clone). So this is bleeding-edge CPU and OS :-)

The OpenBLAS-0.3.12-GCC-10.2.0.eb build fails:

$ eb OpenBLAS-0.3.12-GCC-10.2.0.eb
== Temporary log file in case of crash /tmp/eb-2c6j9qyj/easybuild-qhl_uje4.log
== found valid index for /home/modules/software/EasyBuild/4.3.4/easybuild/easyconfigs, so using it... == found valid index for /home/modules/software/EasyBuild/4.3.4/easybuild/easyconfigs, so using it... == processing EasyBuild easyconfig /home/modules/software/EasyBuild/4.3.4/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.12-GCC-10.2.0.eb
== building and installing OpenBLAS/0.3.12-GCC-10.2.0...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== FAILED: Installation ended unsuccessfully (build directory: /dev/shm/OpenBLAS/0.3.12/GCC-10.2.0): build failed (first 300 chars): cmd " make -j 48 libs netlib shared BINARY='64' CC='gcc' FC='gfortran' MAKE_NB_JOBS='-1' USE_OPENMP='1' USE_THREAD='1' CFLAGS='-O2 -ftree-vectorize -march=native -fno-math-errno' " exited with exit code 2 and output:
getarch_2nd.c: In function main:
getarch_2nd.c:14:35: error: SGEMM_DEFAULT_U (took 1 sec)
== Results of the build can be found in the log file(s) /tmp/eb-2c6j9qyj/easybuild-OpenBLAS-0.3.12-20210528.142832.FCqTY.log ERROR: Build of /home/modules/software/EasyBuild/4.3.4/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.12-GCC-10.2.0.eb failed (err: 'build failed (first 300 chars): cmd " make -j 48 libs netlib shared BINARY=\'64\' CC=\'gcc\' FC=\'gfortran\' MAKE_NB_JOBS=\'-1\' USE_OPENMP=\'1\' USE_THREAD=\'1\' CFLAGS=\'-O2 -ftree-vectorize -march=native -fno-math-errno\' " exited with exit code 2 and output:\ngetarch_2nd.c: In function main:\ngetarch_2nd.c:14:35: error: SGEMM_DEFAULT_U')


The EB log file ends with:

make: *** [Makefile.prebuild:70: getarch_2nd] Error 1
Makefile:154: *** OpenBLAS: Detecting CPU failed. Please set TARGET explicitly, e.g. make TARGET=your_cpu_target. Please read README for the detail.. Stop.
 (at easybuild/tools/run.py:537 in parse_cmd_output)
== 2021-05-28 14:28:34,190 filetools.py:1810 INFO Removing lock /home/modules/software/.locks/_home_modules_software_OpenBLAS_0.3.12-GCC-10.2.0.lock... == 2021-05-28 14:28:34,191 filetools.py:347 INFO Path /home/modules/software/.locks/_home_modules_software_OpenBLAS_0.3.12-GCC-10.2.0.lock successfully removed. == 2021-05-28 14:28:34,191 filetools.py:1814 INFO Lock removed: /home/modules/software/.locks/_home_modules_software_OpenBLAS_0.3.12-GCC-10.2.0.lock == 2021-05-28 14:28:34,191 easyblock.py:3414 WARNING build failed (first 300 chars): cmd " make -j 48 libs netlib shared BINARY='64' CC='gcc' FC='gfortran' MAKE_NB_JOBS='-1' USE_OPENMP='1' USE_THREAD='1' CFLAGS='-O2 -ftree-vectorize -march=native -fno-math-errno' " exited with exit code 2 and output:
getarch_2nd.c: In function main:
getarch_2nd.c:14:35: error: SGEMM_DEFAULT_U
== 2021-05-28 14:28:34,192 easyblock.py:298 INFO Closing log for application name OpenBLAS version 0.3.12

Question: How can I tell OpenBLAS that we have an Intel Ice Lake CPU?

It seems that OpenBLAS doesn't know about Ice Lake nor Cascade Lake :-(
https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt

Thanks,
Ole

--
Ole Holm Nielsen
PhD, Senior HPC Officer
Department of Physics, Technical University of Denmark,
Fysikvej Building 309, DK-2800 Kongens Lyngby, Denmark
E-mail: [email protected]
Homepage: http://dcwww.fysik.dtu.dk/~ohnielse/
Mobile: (+45) 5180 1620

Reply via email to