linbox-team/fflas-ffpack

Build issue on OSX

Closed this issue · 9 comments

Hi, on OSX I'm getting a build error, either with --enable-precompilation or without (giving the same error on "make check").

./configure --prefix=$HOME/sandbox --with-blas-libs="-lopenblas" --enable-precompilation
make

First error amongst many:

In file included from ../../../fflas-ffpack/fflas/fflas_simd/simd512.inl:76:
../../../fflas-ffpack/fflas/fflas_simd/simd512_float.inl:554:10: error: argument to '__builtin_ia32_rndscaleps_mask' must be a constant integer
return _mm512_roundscale_ps(a, i);

Not sure what I'm missing
Help would be most appreciated.
Thx. Mark

fflas-build-errors.txt

This seems to have been an issue with the configuration incorrectly determining that I had AVX-512 extensions. Everything compiles when --disable-avx512f and --disable-avx512dq options are used on the autoconfig.

Hi Mark, sorry for my delayed reply.
This mis-detection of avx-512 is still a bug, so let me reopen the issue so we can try an fix it.
Could you give us more feedback on your setting:
CPU (not only i5-i7 but also the 4 digits following it), which compiler (clang --version or gcc -v), etc.
Thanks for your help.

Ok then, that's what I was starting to guess: you're the happy first one to compile our avx512 code with llvm. The intrinsics are implemented slightly differently from gcc and this may be the reason why we did not see them before. The first instances seem to be easy to fix.
I've pushed a fix to master. Let me know it fixes it.

Well these ones are less trivial. I just wonder how it could work with gcc! I'll need to look into it with fresh eyes tomorow.
Meanwhile, you can safely use fflas-ffpack with the --disable-avx512f --disable-avx512dq that you mentionned. No big performance drop should be noticed.

Mark,
This should be fixed now, since PR #183 was merged. I could reproduce the bug check that it had been fixed on a skylake scalable machine, but feel free to let me know if you can confirm it on your side.
I'm closing the issue. If the problem remains, feel free to reopen.