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? |
grantfirl
left a comment
There was a problem hiding this comment.
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-O1to anyGFS_typedefs.F90when 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.