-
Notifications
You must be signed in to change notification settings - Fork 118
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
Proliferation of preprocessor directives due to bug in Intel compiler fixed in latest versions? #162
Comments
@climbfuji - should we get this fixed and/or are we onto compiler version support in the UFS that allows this preprocessor macro to be eliminated? |
I don't think all of the systems are at 2021.2 yet. From https://spack-stack.readthedocs.io/en/latest/PreConfiguredSites.html#pre-configured-sites-tier-1, I see that Cheyenne is still on intel/19.1.1.217, but this system will be decommissioned end of the year. It would be good to confirm with EMC/NCO (@AlexanderRichert-NOAA and @Hang-Lei-NOAA) that the compiler used on WCOSS2 is at least 2021.2.0 (acorn is 2022.0.2, but it also has a config entry for intel 19). If we eliminate the macro, we basically remove support for Intel compilers older than 2021.2.0 (maybe we can still compile w/p openmp for older versions, not sure). |
@climbfuji - have newer Intel compilers fixed this issue and can the macros now be removed? |
On all R&D HPCs we have intel 2021.3.0 or newer. The only question is WCOSS2. @DusanJovic-NOAA Do you know which Intel compiler version is used on WCOSS2? |
We currently use:
but there are these modules available:
|
Thanks Dusan. Looks like we need to keep those preprocessor directives around for a little longer |
There is a proliferation of preprocessor directives around Open MP pragmas in the code, for example:
GFDL_atmos_cubed_sphere/model/fv_dynamics.F90
Line 418 in d6bfc15
The problem is that the Intel compiler incorrectly required listing pointers in OpenMP
shared
orprivate
clauses when the default isnone
. The GNU compiler on the other does not allow listing pointers asshared
orprivate
. A discussion with Intel and GNU developers led to the conclusion that GNU was right and Intel was wrong. According to Intel, this was fixed in compiler version 2021.2.We need to test if this is indeed the case and if decide whether/when we want to to stop supporting older versions of the compiler (at least with OpenMP enabled).
The text was updated successfully, but these errors were encountered: