Skip to content
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

Build failing with intel oneAPI compilers #128

Open
jfgrimm opened this issue Apr 5, 2022 · 13 comments
Open

Build failing with intel oneAPI compilers #128

jfgrimm opened this issue Apr 5, 2022 · 13 comments
Labels
external bug A bug from a porting issue, compiler, external library, etc.

Comments

@jfgrimm
Copy link

jfgrimm commented Apr 5, 2022

When trying to build SuiteSparse newer than 5.8.1 with either intel compilers version 2021.2.0 or 2021.4.0, the build fails whilst building GraphBLAS with:

/dev/shm/jfg508/SuiteSparse/5.11.0/intel-2021b-METIS-5.1.0/SuiteSparse-5.11.0/GraphBLAS/Source/Template/GB_AxB_dot4_cij.c(77) (col. 17): internal error: 04010002_12229

This error doesn't seem occur with older (pre-oneAPI) intel compilers

@DrTimothyAldenDavis
Copy link
Owner

That sounds like an Intel compiler bug. Is this the icx compiler? What platform are you using? I will likely need help from Intel to track this down, and I'll need these details. I have used Intel 2022 compilers for GraphBLAS and it works just fine, on Ubuntu linux (both 20.04 and 18.04 if I recall).

Can you try the latest 2022 icx compiler? If that fixes the problem, then it must have been a bug in the 2021.x icx compiler. If so, then I would like to know so I can tell users that GraphBLAS requires either a recent gcc (I think 6.x or later, or whatever), or icx 2022 or later.

@DrTimothyAldenDavis
Copy link
Owner

I haven't tried icx 2021.x or earlier.

@jfgrimm
Copy link
Author

jfgrimm commented Apr 5, 2022

this is on a centos 7.9 system (skylake), using the icc/icpc compiler. have had no issues when using GCC, will give the 2022.x compilers a shot

@DrTimothyAldenDavis
Copy link
Owner

DrTimothyAldenDavis commented Apr 5, 2022

Thanks. If switching to the 2022.x compilers resolves it, then I'll put a note in the user guide and I'll try checking the compiler version in the cmake script. Can you try both icc and icx? The latter generates faster code, as compared to icc, so icx is the preferred intel compiler.

@jfgrimm
Copy link
Author

jfgrimm commented Apr 6, 2022

Using the 2022.x compilers didn't solve the issue for me; icc still fails with identical error messages.
I've also had no luck with icx, which actually fails slightly sooner -- I've thrown the error message and supplementary files in a gist.

@DrTimothyAldenDavis
Copy link
Owner

Thanks for the details. I'm trying icx 2022.0.0 just now, on GraphBLAS v7.0.2 (here, not in the SuiteSparse github repo), on an Ubuntu 20.04 system (Intel Xeon broadwell). It compiles just fine. SuiteSparse 5.11.0 contains GraphBLAS v6.2.5 which is identical to v7.0.2 in regards to this file, but I tried it there too. Works fine.

I'm also trying out v7.0.2 on my Linux laptop, which is Ubuntu 18.04.6 with icx 2022.0.0. It's still compiling but it compiled that file just fine.

It looks like this bug needs to be submitted here:
https://software.intel.com/en-us/support/priority-support
but I can't replicate it myself.

@DrTimothyAldenDavis
Copy link
Owner

I also don't have Priority Support from Intel.

@DrTimothyAldenDavis
Copy link
Owner

@tgmattso : can you take a look at this icx compiler bug? And perhaps connect me with someone at Intel who I can report an icx compiler bug to?

@DrTimothyAldenDavis DrTimothyAldenDavis added the external bug A bug from a porting issue, compiler, external library, etc. label Apr 6, 2022
@DrTimothyAldenDavis
Copy link
Owner

icx 2022.0.0 worked just fine on my Ubuntu 18.04 laptop.

The error message says something about a premature EOF. Could it be that your filesystem ran out of space?

@jfgrimm
Copy link
Author

jfgrimm commented Apr 7, 2022

Thanks for looking into this :)
Space is no issue, and I can reproduce the error after wiping the build directory and re-downloading sources. I don't see why it would build on ubuntu and not centos; perhaps the issue is the icx version in combination with system compiler?

@jfgrimm
Copy link
Author

jfgrimm commented Apr 7, 2022

yup that's it
I hit the above issues when the intel compilers are built on GCC 11.2.0 w/ binutils 2.37, but it builds successfully when using either icx built against GCC 9.3.0 w/ binutils 2.34. icc fails in either case on Source/Template/GB_AxB_dot4_cij.c(77) (col. 17): internal error: 04010002_12229

@DrTimothyAldenDavis
Copy link
Owner

So there are two compiler bugs? icx fails when trying to use binutils 2.37 but not 2.34, and icc fails all the time?

@jfgrimm
Copy link
Author

jfgrimm commented Apr 13, 2022

yes, looks that way

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
external bug A bug from a porting issue, compiler, external library, etc.
Projects
None yet
Development

No branches or pull requests

2 participants