GlobalArrays/ga

Fortran failure on theta

Closed this issue · 2 comments

There is a problem configuring fortran on theta. You need to set the --cross-compiler flag to get anything to build, but this disables the ability to check fortran datatype sizes. The real and double precision sizes default to 4 and 8 bytes, respectively, but integers default to 4 bytes. If you are trying to build with --enable-i8, this causes problems.

I set cross_compiling=yes on theta using the default modules (PrgEnv-intel) and it correctly identifies -integer-size 64 as the flag to promote INTEGER to 8 bytes.

The ftn wrapper on theta was producing extra output when using gcc.

ftn -o deleteme deleteme.f
/usr/bin/sha1sum: a.out: No such file or directory

This extra output was causing configure to report an error for a few
tests that had set AC_LANG_WERROR.

Work-around was to touch a.out prior to the AC_LINK_IFELSE.

Fixed in bb8bed2.

You can compiler for AVX2 to avoid cross-compiling:

module swap craype-mic-knl craype-haswell

I doubt that AVX-512 helps that much for the GA code itself unless one deliberately disables MKL support.

NWChem use USE_KNL=1 to enable the KNL compiler flags without affecting GA configure.