Skip to content

Commit

Permalink
updates FMS to 2020.04.01 (NOAA-EMC#392)
Browse files Browse the repository at this point in the history
* updates FMS to 2020.04.01
* fixes fms_files.cmake
* removes extra horiz_interp
* Workaround for FMS 2020.04.01 for Cheyenne with GNU 9.1.0, incl. regression test log
Co-authored-by: Mikyung Lee <mlee@Orion-login-1.HPC.MsState.Edu>
Co-authored-by: Dom Heinzeller <climbfuji@ymail.com>
  • Loading branch information
mlee03 committed Feb 11, 2021
1 parent a562f76 commit 00b3da5
Show file tree
Hide file tree
Showing 13 changed files with 5,450 additions and 5,423 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
[submodule "FMS"]
path = FMS
url = https://github.com/NOAA-GFDL/FMS
branch = master
branch = release/2020.04
[submodule "WW3"]
path = WW3
url = https://github.com/NOAA-EMC/WW3
Expand Down
13 changes: 11 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,17 @@ if(CMAKE_Platform)
else()
message("Platform '${CMAKE_Platform}' configuration file does not exist")
endif()

# DH* 20210208 temporary workaround for FMS issues on Cheyenne with GNU 9.1.0
if (CMAKE_Platform MATCHES "cheyenne.gnu")
message("Applying patch cheyenne_gnu_fms_mpp_util_mpi_inc.patch")
execute_process(COMMAND patch -N -p0 INPUT_FILE cheyenne_gnu_fms_mpp_util_mpi_inc.patch
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT_FILE ${CMAKE_CURRENT_BINARY_DIR}/cheyenne_gnu_fms_mpp_util_mpi_inc.patch.out
ERROR_FILE ${CMAKE_CURRENT_BINARY_DIR}/cheyenne_gnu_fms_mpp_util_mpi_inc.patch.err
RESULT_VARIABLE RC)
# *DH 20210208
endif()
endif()

message("")
Expand Down Expand Up @@ -130,8 +141,6 @@ endif()
###############################################################################
include(fms_files.cmake)
add_library(fms ${fms_src_files} ${fms_headers})
# stupid cmake can not figure out dependency of fft.F90 on fft99.F90 because 'use fft99_mod' is inside ifdefs
set_property(SOURCE FMS/fft/fft.F90 APPEND_STRING PROPERTY COMPILE_FLAGS "-DSGICRAY=0 -DNAGFFT=0")

list(APPEND _fms_defs_public use_libMPI
use_netCDF
Expand Down
2 changes: 1 addition & 1 deletion FMS
Submodule FMS updated 330 files
12 changes: 12 additions & 0 deletions cheyenne_gnu_fms_mpp_util_mpi_inc.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
--- FMS/mpp/include/mpp_util_mpi.inc 2021-02-08 08:24:21.000000000 -0700
+++ FMS/mpp/include/mpp_util_mpi.inc 2021-02-08 08:24:15.000000000 -0700
@@ -169,7 +169,8 @@
integer, intent(in ), optional :: msg_size(:)
integer, intent(in ), optional :: msg_type(:)

- integer :: i, m, n, stride, my_check, rsize
+ integer :: i, m, n, stride, my_check
+ integer, volatile :: rsize

if( debug .and. (current_clock.NE.0) )call SYSTEM_CLOCK(start_tick)
my_check = EVENT_SEND
25 changes: 15 additions & 10 deletions fms_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,21 @@ list(APPEND fms_src_files
FMS/amip_interp/amip_interp.F90
FMS/astronomy/astronomy.F90
FMS/axis_utils/axis_utils.F90
FMS/axis_utils/axis_utils2.F90
FMS/block_control/block_control.F90
FMS/column_diagnostics/column_diagnostics.F90
FMS/constants/constants.F90
FMS/coupler/atmos_ocean_fluxes.F90
FMS/coupler/coupler_types.F90
FMS/coupler/ensemble_manager.F90
FMS/data_override/data_override.F90
FMS/data_override/get_grid_version_fms2io.F90
FMS/data_override/get_grid_version_mpp.F90
FMS/diag_integral/diag_integral.F90
FMS/diag_manager/diag_axis.F90
FMS/diag_manager/diag_data.F90
FMS/diag_manager/diag_grid.F90
FMS/diag_manager/diag_manager.F90
FMS/diag_manager/diag_manifest.F90
FMS/diag_manager/diag_output.F90
FMS/diag_manager/diag_table.F90
FMS/diag_manager/diag_util.F90
Expand All @@ -28,12 +30,16 @@ list(APPEND fms_src_files
FMS/drifters/quicksort.F90
FMS/exchange/stock_constants.F90
FMS/exchange/xgrid.F90
FMS/fft/fft.F90
FMS/fft/fft99.F90
FMS/field_manager/field_manager.F90
FMS/field_manager/fm_util.F90
FMS/fms/fms.F90
FMS/fms/fms_io.F90
FMS/fms2_io/blackboxio.F90
FMS/fms2_io/fms_io_utils.F90
FMS/fms2_io/fms_netcdf_domain_io.F90
FMS/fms2_io/fms_netcdf_unstructured_domain_io.F90
FMS/fms2_io/fms2_io.F90
FMS/fms2_io/netcdf_io.F90
FMS/horiz_interp/horiz_interp.F90
FMS/horiz_interp/horiz_interp_bicubic.F90
FMS/horiz_interp/horiz_interp_bilinear.F90
Expand All @@ -43,42 +49,41 @@ list(APPEND fms_src_files
FMS/interpolator/interpolator.F90
FMS/memutils/memutils.F90
FMS/monin_obukhov/monin_obukhov.F90
FMS/monin_obukhov/monin_obukhov_kernel.F90
FMS/monin_obukhov/monin_obukhov_inter.F90
FMS/mosaic/gradient.F90
FMS/mosaic/grid.F90
FMS/mosaic/mosaic.F90
FMS/mosaic/mosaic2.F90
FMS/mpp/mpp.F90
FMS/mpp/mpp_data.F90
FMS/mpp/mpp_domains.F90
FMS/mpp/mpp_efp.F90
FMS/mpp/mpp_io.F90
FMS/mpp/mpp_memutils.F90
FMS/mpp/mpp_parameter.F90
FMS/mpp/mpp_pset.F90
FMS/mpp/mpp_utilities.F90
FMS/platform/platform.F90
FMS/random_numbers/MersenneTwister.F90
FMS/random_numbers/mersennetwister.F90
FMS/random_numbers/random_numbers.F90
FMS/sat_vapor_pres/sat_vapor_pres.F90
FMS/sat_vapor_pres/sat_vapor_pres_k.F90
FMS/station_data/station_data.F90
FMS/time_interp/time_interp.F90
FMS/time_interp/time_interp_external.F90
FMS/time_interp/time_interp_external2.F90
FMS/time_manager/get_cal_time.F90
FMS/time_manager/time_manager.F90
FMS/topography/gaussian_topog.F90
FMS/topography/topography.F90
FMS/tracer_manager/tracer_manager.F90
FMS/tridiagonal/tridiagonal.F90

FMS/memutils/memuse.c
FMS/affinity/affinity.c
FMS/mpp/mpp_memuse.c
FMS/mosaic/create_xgrid.c
FMS/mosaic/gradient_c2l.c
FMS/mosaic/interp.c
FMS/mosaic/mosaic_util.c
FMS/mosaic/read_mosaic.c
FMS/mpp/nsclock.c
FMS/mpp/threadloc.c
)

list( APPEND fms_headers
Expand Down
Loading

0 comments on commit 00b3da5

Please sign in to comment.