-
Notifications
You must be signed in to change notification settings - Fork 277
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump up GCC version to 13.x or later to support SIMD AVX512 fp16 instructions #5226
Comments
Taking a look on change this on AL2, note that we might need to do the same for Almalinux once AL2 deprecated. |
GCC13 is not able to compile openblas correctly:
|
This might be a case being fixed in 0.3.28 version: |
A similar segfault on 0.3.27 on RISCV with gcc13: |
Seems like this is related to using USE_OPENMP=1 in 0.3.27 specifically. |
Report to them: OpenMathLib/OpenBLAS#4719 (comment) |
Will try more verbose and develop branch tomorrow: |
Failed at the same place again with
|
Not sure what to make of this, what build options did you use for OpenBLAS please ? |
("historically", this kind of crash used to happen when one mixed a version of gcc with a different one of gfortran at build, or the test executables managed to load an older version of libgfortran.so at runtime. The former can happen when you set up your PATH to resolve "gcc" and "gfortran" to the newer versions, but "/usr/bin/cc" is still linked to the distribution-default older version of gcc. ) |
Hi @martin-frbg , On compiling openblas:
Then run make with the above env vars. We did use a manually compiled version of gcc 13.2 from source, with these flags:
We did have another older version of gfortran on version 4.x I believe alongside the 13.2 version, probably that can be a reason let me take a look on that. Thanks. |
After having binutils upgrade to 2.42.90:
|
See a similar issue in 2019 here: |
Seems like it is also incorrectly linked:
|
The "bad status in open" reeks of an ancient gfortran, and indeed a GCC13 gfortran should be linking libgfortran.so.5 - this looks a lot like the "new gcc - old gfortran" (or vice versa) ABI mismatch I mentioned. Please check that you are actually invoking the versions of gcc and gfortran that you intended to use. (BTW the CXX=g++ is irrelevant for everything except the "thread safety tests" that need to be explicitly enabled - CC is what you want to have set up correctly, unless you rely on the automatic default of /usr/bin/cc that could be a link to whatever "old but stable" system compiler your installation was delivered with) |
Description
As of now, we are using GCC 10.x to compile native libraries in k-NN plugin. But, we are working on a new feature(targeting to be released in 2.19) with Intel to add support for avx512_fp16 instructions to Faiss Scalar Quantizer fp16 which will boost the performance. But, to invoke these instructions we need to compile these native libraries with GCC 13.x or later and the package manager doesn't support these versions directly on AL2 so we need to install it from source.
OpenSearch Version - 2.19
cc: @peterzhuamazon
The text was updated successfully, but these errors were encountered: