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

Upgrade to Intel LLVM compilers #879

Open
DavidHuber-NOAA opened this issue Dec 5, 2023 · 15 comments · May be fixed by #996
Open

Upgrade to Intel LLVM compilers #879

DavidHuber-NOAA opened this issue Dec 5, 2023 · 15 comments · May be fixed by #996
Assignees

Comments

@DavidHuber-NOAA
Copy link
Collaborator

DavidHuber-NOAA commented Dec 5, 2023

The 'classic' Intel compilers (ifort, icc, and icpc) are now discontinued and the new LLVM compilers (ifx and icx) are the only option starting with version 2024. All supported machines with working versions of the LLVM compilers should be upgraded to the LLVM suite.

Per @junwang-noaa - try to use the 2024 version as the 2023 version has some bugs.

@GeorgeGayno-NOAA GeorgeGayno-NOAA self-assigned this Aug 12, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 12, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 12, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 13, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 13, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 13, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 13, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 14, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 14, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 14, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 14, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 14, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 19, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 19, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 19, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 19, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 19, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 20, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 20, 2024
@GeorgeGayno-NOAA
Copy link
Collaborator

Using 1056ef5, the unit tests were successfully run on Hercules and Hera.

NOTE: Setting CMAKE_C_FLAGS_RELEASE "-O2" (in ./CMakeLists.txt) caused the fre-nctools/tst_create_xgrid unit test to 'seg fault'. For now, I will set CMAKE_C_FLAGS_RELEASE "-O1" for IntelLLVM

GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 22, 2024
@GeorgeGayno-NOAA
Copy link
Collaborator

@AlexanderRichert-NOAA - I want to update the Github workflows to use IntelLLVM. I think I completed part of the update at c10e85a. However, the libraries are built using https://github.com/GeorgeGayno-NOAA/UFS_UTILS/blob/intelLLVM/ci/spack.yaml. Can you or someone on the libraries team assist me with updating spack.yaml?

@GeorgeGayno-NOAA
Copy link
Collaborator

Hash c10e85a was tested on Hercules. All regression tests were run:

  • global_cycle, ice_blend, ocnice_prep and snow2mdl and weight_gen all passed.
  • chgres_cube tests 6, 7, and 11 failed. All others passed.
  • cpld_gridgen - all tests failed.

All failed tests had roundoff differences from their baselines.

GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 23, 2024
@GeorgeGayno-NOAA
Copy link
Collaborator

All regression tests were run on WCOSS2 using 9511885. All tests passed as expected.

@GeorgeGayno-NOAA
Copy link
Collaborator

My preliminary tests show UFS_UTILS is working with the existing spack-stacks.

Will hold off on further work until it is determined whether new versions of spack-stack (that use IntelLLVM) will be implemented.

GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 27, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Aug 28, 2024
@GeorgeGayno-NOAA
Copy link
Collaborator

@AlexanderRichert-NOAA - I want to update the Github workflows to use IntelLLVM. I think I completed part of the update at c10e85a. However, the libraries are built using https://github.com/GeorgeGayno-NOAA/UFS_UTILS/blob/intelLLVM/ci/spack.yaml. Can you or someone on the libraries team assist me with updating spack.yaml?

I tried updates at 56bf5e1 and 98f840a, but the spack build fails during the compilation of sigio library routine sigio_module.f. I also see numerous warnings concerning compiler options. For example:

warning: unknown warning option '-Wc90-c99-compat'; did you mean '-Wc99-compat'? [-Wunknown-warning-option]

@GeorgeGayno-NOAA
Copy link
Collaborator

Ah yes, we added Intel OneAPI support to sigio but didn't actually do a release (right now it's failing because it's looking for fixed form because -free isn't being applied). I'll do a release shortly...

Thanks. I pointed to v2.3.3 at 0147b59, but now I am getting an error during the spack install. The error is:

Cannot satisfy '[email protected]'
        required because [email protected] requested explicitly 

Any ideas?

@GeorgeGayno-NOAA
Copy link
Collaborator

Ah yes, we added Intel OneAPI support to sigio but didn't actually do a release (right now it's failing because it's looking for fixed form because -free isn't being applied). I'll do a release shortly...

Thanks. I pointed to v2.3.3 at 0147b59, but now I am getting an error during the spack install. The error is:

Cannot satisfy '[email protected]'
        required because [email protected] requested explicitly 

Any ideas?

Is this the issue? 2.3.2 is required.
https://github.com/JCSDA/spack-stack/blob/develop/configs/common/packages.yaml

@AlexanderRichert-NOAA
Copy link
Collaborator

No, version 2.3.3 isn't in the JCSDA fork yet. Let me see if I can add that right now...

@AlexanderRichert-NOAA
Copy link
Collaborator

It should work once JCSDA/spack#480 is merged.

GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 22, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 22, 2024
@AlexanderRichert-NOAA
Copy link
Collaborator

(Done)

GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 22, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 22, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 23, 2024
@GeorgeGayno-NOAA
Copy link
Collaborator

(Done)

Thanks. Now I am running into the same issue with sfcio v1.4.1. My unit tests no longer use sfcio, so I am removing it from the workflow. But other users will need access to v1.4.2.

GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 23, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 23, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 23, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 23, 2024
@AlexanderRichert-NOAA
Copy link
Collaborator

sfcio 1.4.2 is now available under JCSDA Spack.

GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 24, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 25, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 25, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 25, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 25, 2024
Hera and Orion to default to intelLLVM.

Fixes ufs-community#879.
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 25, 2024
GeorgeGayno-NOAA pushed a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 25, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 28, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 31, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 31, 2024
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 31, 2024
on Hera it caused a compilation error when choosing
'debug' mode.

Fixes ufs-community#879.
GeorgeGayno-NOAA added a commit to GeorgeGayno-NOAA/UFS_UTILS that referenced this issue Oct 31, 2024
@GeorgeGayno-NOAA GeorgeGayno-NOAA linked a pull request Nov 4, 2024 that will close this issue
10 tasks
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 a pull request may close this issue.

3 participants