-
Notifications
You must be signed in to change notification settings - Fork 164
Description
Description
At some point in the past few months, compilation of Ferrier-Aligo microphysics was broken, unfortunately I don't have time to track down the exact hash. This was first noted in the Single-Column model when updating to the latest ccpp-physics hash, but I have confirmed this occurs in the ufs-weather-model as well, which suggests the problem is in the physics and not a specific host.
Steps to Reproduce
For SCM, the easiest way to replicate this is to attempt to compile with all SDFs:
> cmake -DCCPP_SUITES=ALL ../src 2>&1 | tee log.cmake
> make -j4 2>&1 | tee log.make
[ 0%] Building Fortran object ccpp/framework/src/CMakeFiles/ccpp_framework.dir/ccpp_types.F90.o
[ 0%] Linking Fortran static library libccpp_framework.a
[ 0%] Built target ccpp_framework
...
...
[ 26%] Building Fortran object ccpp/physics/CMakeFiles/ccpp_physics.dir/physics/Interstitials/UFS_SCM_NEPTUNE/GFS_surface_composites_post.F90.o
[ 26%] Building Fortran object ccpp/physics/CMakeFiles/ccpp_physics.dir/physics/MP/Ferrier_Aligo/mp_fer_hires.F90.o
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/ccpp-scm/ccpp/physics/physics/MP/Ferrier_Aligo/mp_fer_hires.F90(90): error #6633: The type of the actual argument differs from the type of the dummy argument. [MPICOMM]
CALL FERRIER_INIT_HR(dtp,mpicomm,mpirank,mpiroot,threads,errmsg,errflg)
--------------------------------^
compilation aborted for /scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/ccpp-scm/ccpp/physics/physics/MP/Ferrier_Aligo/mp_fer_hires.F90 (code 1)
make[2]: *** [ccpp/physics/CMakeFiles/ccpp_physics.dir/build.make:1583: ccpp/physics/CMakeFiles/ccpp_physics.dir/physics/MP/Ferrier_Aligo/mp_fer_hires.F90.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:230: ccpp/physics/CMakeFiles/ccpp_physics.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
NOTE: A different error occurs if you attempt to compile with just a single suite with FA, which suggests there may be multiple issues involved. See "Output" section for full details
Additional Context
I first ran into this error on Hera with Intel, but also replicated it with MacOS clang compilers. It's likely this affects all compilers/platforms
Output
Full set of errors when attempting to compile with HAFS_v0_hwrf:
> cmake -DCCPP_SUITES=HAFS_v0_hwrf ../src 2>&1 | tee log.cmake
> make -j4 2>&1 | tee log.make
[ 0%] Building Fortran object ccpp/framework/src/CMakeFiles/ccpp_framework.dir/ccpp_types.F90.o
[ 1%] Linking Fortran static library libccpp_framework.a
[ 1%] Built target ccpp_framework
...
...
[ 15%] Building Fortran object ccpp/physics/CMakeFiles/ccpp_physics.dir/physics/Radiation/radiation_astronomy.f.o
[ 15%] Building Fortran object ccpp/physics/CMakeFiles/ccpp_physics.dir/physics/Radiation/radiation_cloud_overlap.F90.o
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(64): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [MODULE_MP_RADAR]
USE module_mp_radar
----------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(925): error #6404: This name does not have a type, and must have an explicit type. [XAM_R]
xam_r = am_r
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(926): error #6404: This name does not have a type, and must have an explicit type. [XBM_R]
xbm_r = bm_r
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(927): error #6404: This name does not have a type, and must have an explicit type. [XMU_R]
xmu_r = mu_r
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(928): error #6404: This name does not have a type, and must have an explicit type. [XAM_S]
xam_s = am_s
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(929): error #6404: This name does not have a type, and must have an explicit type. [XBM_S]
xbm_s = bm_s
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(930): error #6404: This name does not have a type, and must have an explicit type. [XMU_S]
xmu_s = mu_s
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(931): error #6404: This name does not have a type, and must have an explicit type. [XAM_G]
xam_g = am_g
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(932): error #6404: This name does not have a type, and must have an explicit type. [XBM_G]
xbm_g = bm_g
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(933): error #6404: This name does not have a type, and must have an explicit type. [XMU_G]
xmu_g = mu_g
------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6139): error #6404: This name does not have a type, and must have an explicit type. [NRBINS]
do n = 1, nrbins
---------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6140): error #6404: This name does not have a type, and must have an explicit type. [XXDS]
x = am_s * xxDs(n)**bm_s
-------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6142): error #6404: This name does not have a type, and must have an explicit type. [MELT_OUTSIDE_S]
& fmelt_s, melt_outside_s, m_w_0, m_i_0, lamda_radar, &
-----------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6142): error #6404: This name does not have a type, and must have an explicit type. [M_W_0]
& fmelt_s, melt_outside_s, m_w_0, m_i_0, lamda_radar, &
---------------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6142): error #6404: This name does not have a type, and must have an explicit type. [M_I_0]
& fmelt_s, melt_outside_s, m_w_0, m_i_0, lamda_radar, &
----------------------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6142): error #6404: This name does not have a type, and must have an explicit type. [LAMDA_RADAR]
& fmelt_s, melt_outside_s, m_w_0, m_i_0, lamda_radar, &
-----------------------------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6143): error #6404: This name does not have a type, and must have an explicit type. [MIXINGRULESTRING_S]
& CBACK, mixingrulestring_s, matrixstring_s, &
---------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6143): error #6404: This name does not have a type, and must have an explicit type. [MATRIXSTRING_S]
& CBACK, mixingrulestring_s, matrixstring_s, &
-----------------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6144): error #6404: This name does not have a type, and must have an explicit type. [INCLUSIONSTRING_S]
& inclusionstring_s, hoststring_s, &
--------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6144): error #6404: This name does not have a type, and must have an explicit type. [HOSTSTRING_S]
& inclusionstring_s, hoststring_s, &
---------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6145): error #6404: This name does not have a type, and must have an explicit type. [HOSTMATRIXSTRING_S]
& hostmatrixstring_s, hostinclusionstring_s)
--------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6145): error #6404: This name does not have a type, and must have an explicit type. [HOSTINCLUSIONSTRING_S]
& hostmatrixstring_s, hostinclusionstring_s)
----------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6148): error #6404: This name does not have a type, and must have an explicit type. [SIMPSON]
eta = eta + f_d * CBACK * simpson(n) * xdts(n)
----------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6148): error #6404: This name does not have a type, and must have an explicit type. [XDTS]
eta = eta + f_d * CBACK * simpson(n) * xdts(n)
-----------------------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6150): error #6404: This name does not have a type, and must have an explicit type. [LAMDA4]
ze_snow(k) = SNGL(lamda4 / (pi5 * K_w) * eta)
-----------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6150): error #6404: This name does not have a type, and must have an explicit type. [PI5]
ze_snow(k) = SNGL(lamda4 / (pi5 * K_w) * eta)
---------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6150): error #6404: This name does not have a type, and must have an explicit type. [K_W]
ze_snow(k) = SNGL(lamda4 / (pi5 * K_w) * eta)
---------------------------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6160): error #6404: This name does not have a type, and must have an explicit type. [XXDG]
x = am_g * xxDg(n)**bm_g
-------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6162): error #6404: This name does not have a type, and must have an explicit type. [MELT_OUTSIDE_G]
& fmelt_g, melt_outside_g, m_w_0, m_i_0, lamda_radar, &
-----------------------------^
/scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90(6163): error #6404: This name does not have a type, and must have an explicit type. [MIXINGRULESTRING_G]
& CBACK, mixingrulestring_g, matrixstring_g, &
---------------------------^
/tmp/ifortCWKQxg.i90(6523): catastrophic error: Too many errors, exiting
compilation aborted for /scratch1/BMC/hmtb/kavulich/CCPP/workdir/suite_names_update/PR_482/ccpp-scm/ccpp/physics/physics/MP/Thompson/module_mp_thompson.F90 (code 1)
make[2]: *** [ccpp/physics/CMakeFiles/ccpp_physics.dir/build.make:335: ccpp/physics/CMakeFiles/ccpp_physics.dir/physics/MP/Thompson/module_mp_thompson.F90.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:230: ccpp/physics/CMakeFiles/ccpp_physics.dir/all] Error 2
make: *** [Makefile:136: all] Error 2