software-layer icon indicating copy to clipboard operation
software-layer copied to clipboard

libfabric/1.12.1-GCCcore-10.3.0 fails to build for x86_64/generic

Open boegel opened this issue 3 years ago • 1 comments

I ran into the following problem when building libfabric-1.12.1-GCCcore-10.3.0.eb (in the 2021.12 pilot) for the x86_64/generic target:

In file included from /cvmfs/pilot.eessi-hpc.org/versions/2021.12/software/linux/x86_64/generic/software/GCCcore/10.3.0/lib/gcc/x86_64-pc-linux-gnu/10.3.0/include/immintrin.h:51,
                 from prov/psm3/psm3/opa/opa_dwordcpy-x86_64.c:57:
/cvmfs/pilot.eessi-hpc.org/versions/2021.12/software/linux/x86_64/generic/software/GCCcore/10.3.0/lib/gcc/x86_64-pc-linux-gnu/10.3.0/include/avxintrin.h:920:1: error: inlining failed in call to always_inline _mm256_loadu_si256: target specific option mismatch
  920 | _mm256_loadu_si256 (__m256i_u const *__P)
      | ^~~~~~~~~~~~~~~~~~
prov/psm3/psm3/opa/opa_dwordcpy-x86_64.c:212:19: note: called from here
  212 |    __m256i tmp0 = _mm256_loadu_si256(sp);
      |                   ^~~~~~~~~~~~~~~~~~~~~~
make[1]: *** [Makefile:13048: prov/psm3/psm3/opa/libopa_la-opa_dwordcpy-x86_64.lo] Error 1
make[1]: *** Waiting for unfinished jobs....

This is a known issue with libfabric, see also https://github.com/easybuilders/easybuild-easyconfigs/pull/13871.

A viable workaround here could be to add --disable-psm3 to configopts when libfabric is build with --optarch=GENERIC on x86_64 in our EasyBuild hooks, or to implement a custom easyblock for libfabric (which would be a more general fix that could be done in EasyBuild).

boegel avatar Dec 16 '21 18:12 boegel

A workaround for this is implemented in #160 through our EasyBuild hooks

boegel avatar Dec 18 '21 19:12 boegel