See OpenBLAS issue #2244: "FATAL ERROR" messages building or running OpenBLAS v0.3.7 in Docker on macOS.
Building OpenBLAS in Docker Desktop on macOS fails the self-test part of its build.
This is Docker Desktop 2.1.0.1 (37199), Engine 19.03.1, on macOS 10.14.6.
I don't know how to tell what version of xhyve it uses.
Building OpenBLAS directly on macOS works fine.
Building OpenBLAS in Docker on Linux works fine.
Adding NO_AVX2=1 to the make step avoids this failure -- with a performance penalty.
The OpenBLAS team (@brada4, @martin-frbg) concludes that xhyve has a bug in AVX2 support that will break fast math libraries, video codecs, and everything else compiled with -march=native:
To serve OpenBLAS it is sufficient to mask out any CPUID bits with the effect on CPU registers exceeding original AVX, an extension they seem to support.
The fatal errors are encountered in comparisons after math accuracy tests, not the compilation itself, because of what seems like AVX2 state being corrupt at low level behind the scenes.
See OpenBLAS issue #2244: "FATAL ERROR" messages building or running OpenBLAS v0.3.7 in Docker on macOS.
NO_AVX2=1
to themake
step avoids this failure -- with a performance penalty.The OpenBLAS team (@brada4, @martin-frbg) concludes that
xhyve
has a bug in AVX2 support that will break fast math libraries, video codecs, and everything else compiled with-march=native
: