After the last tranche of V12 updates, my GNU Debug nightly builds fails at run time with a floating overflow in the Moist process library (via evap3 it seems):
1 0x00000000033eb0e8 __geosmoist_process_library_MOD_ldradius4() /discover/nobackup/mathomp4/SystemTests/builds/AGCM_V12GNU/CURRENT/GEOSgcm/src/Components/@GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/GEOSmoist_GridComp/Process_Library.F90:758
2 0x00000000033eba59 __geosmoist_process_library_MOD_evap3() /discover/nobackup/mathomp4/SystemTests/builds/AGCM_V12GNU/CURRENT/GEOSgcm/src/Components/@GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/GEOSmoist_GridComp/Process_Library.F90:643
3 0x000000000381731a __geos_gfdl_1m_interfacemod_MOD_gfdl_1m_run() /discover/nobackup/mathomp4/SystemTests/builds/AGCM_V12GNU/CURRENT/GEOSgcm/src/Components/@GEOSgcm_GridComp/GEOSagcm_GridComp/GEOSphysics_GridComp/GEOSmoist_GridComp/GEOS_GFDL_1M_InterfaceMod.F90:747
I did some prints and at least one point had:
LDRADIUS4 inputs: RHO= 1.20311737 QC= 1.06696154E+36
which was then used in:
!- liquid water content
WC = 1.e3*RHO*QC ! air density [g/m3] * liquid cloud mixing ratio [kg/kg]
and I think it then overflowed a 32-bit real.
Now the latest changes in v12 GEOSgcm_GridComp as a whole are tiny:
https://github.com/GEOS-ESM/GEOSgcm_GridComp/compare/GCMv12-rc22...GCMv12-rc23?w=1
and only the gfdl_mp one seems like it could do anything here.
I tried adding (back) qa (i, k) = qaz (k) in the if (.not. do_qa) then part of the code in gfdl_mp.F90. But it is also non-zero-diff if I do that.
Before your fix, qa was always set to qaz so that seems to make GNU happy. But well, since we are in a .not. do_qa block, we aren't probably meant to do qa!
cc: @sdrabenh @wmputman
After the last tranche of V12 updates, my GNU Debug nightly builds fails at run time with a floating overflow in the Moist process library (via evap3 it seems):
I did some prints and at least one point had:
which was then used in:
and I think it then overflowed a 32-bit real.
Now the latest changes in v12 GEOSgcm_GridComp as a whole are tiny:
https://github.com/GEOS-ESM/GEOSgcm_GridComp/compare/GCMv12-rc22...GCMv12-rc23?w=1
and only the
gfdl_mpone seems like it could do anything here.I tried adding (back)
qa (i, k) = qaz (k)in theif (.not. do_qa)then part of the code ingfdl_mp.F90. But it is also non-zero-diff if I do that.Before your fix,
qawas always set toqazso that seems to make GNU happy. But well, since we are in a.not. do_qablock, we aren't probably meant to doqa!cc: @sdrabenh @wmputman