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

Add CI testing with Intel Fortran compiler #260

Merged
merged 2 commits into from
Dec 9, 2020

Conversation

awvwgk
Copy link
Member

@awvwgk awvwgk commented Dec 8, 2020

Read more on Intel oneAPI: https://fortran-lang.discourse.group/t/intel-releases-oneapi-toolkit-free-fortran-2018/471

This finally implements support for Intel oneAPI compilers to test stdlib.

Requires #257
Fixes #249

- ifort 21.1 BETA 20200827 compiles F18 error stop syntax but
  does not propagate the error code correctly
@certik
Copy link
Member

certik commented Dec 8, 2020

This is amazing, thank you!!

@certik
Copy link
Member

certik commented Dec 8, 2020

It took only 1.5 min to install, and it overall finishes quickly. Very usable!

@awvwgk
Copy link
Member Author

awvwgk commented Dec 8, 2020

If you only require ifort it is an okay but still largish amount of package downloads. Note, if you also require MKL you won't get around caching the whole 10GB installation in /opt/intel.

Copy link
Member

@jvdp1 jvdp1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great! Thank you!

@certik
Copy link
Member

certik commented Dec 8, 2020

The CI says Need to get 393 MB of archives., so it is only 393 MB?

@awvwgk
Copy link
Member Author

awvwgk commented Dec 8, 2020

Only ifort, icc and Intel MPI, if you add any of the Intel libraries to the mix, the download size quickly explodes (try installing intel-oneapi-basekit instead). And compression works quite nicely for multiple instructions paths in a fat binary from my experience for binaries compiled with Intel, same applies probably also to the apt packages.

@certik
Copy link
Member

certik commented Dec 8, 2020

I tried to install it on my laptop running Ubuntu 18.04 using the exact commands in this PR. Everything installs fine. I load the variables. But then trying to compile any program gives:

$ ifort a.f90 
ifort: error #10105: ld: core dumped
ifort: warning #10102: unknown signal(-1408259920)
ifort: error #10106: Fatal error in ld, terminated by unknown

@awvwgk
Copy link
Member Author

awvwgk commented Dec 8, 2020

That is a known issue, they broke binutils with the update from beta10 to the release version and supplied patches only for Ubuntu 20.04 and later. So you either have to downgrade manually to the beta10 version, which is broken for stdlib or upgrade your Ubuntu to 20.04 (sounds like fun).

I can't find it in the release notes anymore but I definitely remember a list of supported OS somewhere for the binutils issue.

Copy link
Member

@milancurcic milancurcic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wonderful, thanks a lot. #257 is in so I'll go ahead and merge.

@milancurcic milancurcic merged commit c23a1c6 into fortran-lang:master Dec 9, 2020
@certik
Copy link
Member

certik commented Dec 9, 2020

I am going to go ahead and merge this. We can then further improve in master.

@certik
Copy link
Member

certik commented Dec 9, 2020

@junghans, here is how we got Intel Fortran working, and it seems to work really nicely (small download, quick run).

@awvwgk awvwgk deleted the intel-ci branch December 9, 2020 06:48
@awvwgk
Copy link
Member Author

awvwgk commented Dec 9, 2020

Quick follow-up, here are the release notes stating the binutils issue: https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-fortran-compiler-release-notes.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support for Intel oneAPI compilers
4 participants