-
Notifications
You must be signed in to change notification settings - Fork 153
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 logic to reduce optimization for host-model provided GFS_typedefs.F90 #869
Add logic to reduce optimization for host-model provided GFS_typedefs.F90 #869
Conversation
…heir preceding paths
The compile works with -o0 option. Let me try creating baseline for Ted's PR. |
@junwang-noaa Do you want this merged into #761 or brought in separately? |
@grantfirl Please merge Dom's change to PR#761. I manually copied the code. So far no compile jobs failed in the baseline creation. |
@climbfuji The fact that a host model file needs changes to a ccpp-physics CMakeLists.txt file for compilation is not intuitive to me. I thought that the build system refactor done a while back was supposed to create the correct separation in the various CMakeLists.txt? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved for fixing wcoss_dell compilation issue from ufs-community/ufs-weather-model#1032, but not understood why the compilation of GFS_typedefs.F90 is controlled via a ccpp-physics CMakeLists.txt.
@junwang-noaa I've provided instructions for the developer to bring in this bugfix: #761 (comment) |
Great! Once the baseline creation is done, I will check out a clean copy of your ufs-weather-model branch and run final RT on dell. |
Add logic to reduce optimization for multiple files, independent of their preceding paths, including the host-model provided
GFS_typedefs.F90
.For
GFS_typedefs.F90
, this is slightly more complicated because the relative path to the file depends on the host model. The solution presented here will add-O1
to anyGFS_typedefs.F90
when using Intel in release (PROD), regardless of the host model. We definitely do not want host-model specific code inCMakeLists.txt
.Duplicates for the auto-generated cmake include files need to be removed. This can also be done in the framework before writing the files, but even if that gets done having a second check here doesn't hurt.
This should fix the problem that @junwang-noaa reported (exceeding memory on wcoss_dell_p3 in compile jobs).
Tested to compile (and do the right thing) on Hera with Intel in PROD mode.