EarthWorksOrg / EarthWorks

Other
3 stars 2 forks source link

EarthWorks develop branch fails to build on Derecho #27

Closed gdicker1 closed 7 months ago

gdicker1 commented 7 months ago

Current clones of the develop branch of EarthWorks fail to build on Derecho due to issues with the ncarenv/23.09 modules. Compilers will report a variety of issues (some examples below) due to the software stack. To fix this, the Derecho entry ccs_configs/machines/config_machines.xml can be reverted to ncarenv/23.06 as it is on the main branch (as confirmed by @supreethms1809).

Branch version (most recent tag): ewm-2.0.003

Example commands to produce this error:

Get a fresh clone of the develop branch, checkout externals, and then try to setup+build a FHS94 case with any compiler.

git clone -b develop https://github.com/EarthWorksOrg/EarthWorks EW_dev
cd EW_dev
./manage_externals/checkout_externals
CASEDIR="../cases/EW_dev_NoOAcc_FHS94.mpasa120.derecho.intel.64"
./cime/scripts/create_newcase --case "${CASEDIR}" --project UCSU0085 --compiler intel-classic --res mpasa120_mpasa120 --compset FHS94 --driver nuopc --run-unsupported -i /glade/campaign/univ/ucsu0085/inputdata/ --pecount 64
cd "${CASEDIR}"
./xmlchange --append CAM_CONFIG_OPTS="-phys held_suarez -analytic_ic -nlev 32"
./xmlchange DOUT_S=false
./xmlchange STOP_OPTION=ndays
./xmlchange STOP_N=1
./case.setup
qcmd -A <proj_code> -- ./case.build

Example errors seen:

With NVHPC mct fails to build:

 ERROR: configure: error: in `/glade/derecho/scratch/gdicker/EWv21_OAcc_FHS94.mpasa120.derecho.nvhpc.64/bld/nvhpc/mpich/nodebug/nothreads/nuopc/mct':
 configure: error: C compiler cannot create executables
 See `config.log' for more details
 gmake: *** [/glade/work/gdicker/EarthWorks/2023Nov01_EWv2OpenACC/cases/EWv21_OAcc_FHS94.mpasa120.derecho.nvhpc.64/Tools/Makefile:650: /glade/derecho/scratch/ gdicker/EWv21_OAcc_FHS94.mpasa120.derecho.nvhpc.64/bld/nvhpc/mpich/nodebug/nothreads/nuopc/mct/Makefile.conf] Error 77

With Intel-Classic csm_share fails to build:

/glade/derecho/scratch/duda/testing/EW_dev/share/src/shr_infnan_mod.F90.in(71): error #7950: Procedure name in MODULE PROCEDURE statement must be the name of accessible module procedure.   [SHR_INFNAN_ISNAN_DOUBLE]
   module procedure shr_infnan_isnan_double
--------------------^
gdicker1 commented 7 months ago

Update: with the changes in EWOrg/ccs_config_cesm #13 builds with NVHPC, Intel-OneAPI (ifx), and GNU compilers were successful. The same error showed up for Intel-Classic:

/glade/work/gdicker/EarthWorks/2023Nov01_EWv2OpenACC/EarthWorks/share/src/shr_infnan_mod.F90.in(71): error #7950: Procedure name in MODULE PROCEDURE          statement must be the name of accessible module procedure.   [SHR_INFNAN_ISNAN_DOUBLE]
   module procedure shr_infnan_isnan_double
--------------------^
/glade/work/gdicker/EarthWorks/2023Nov01_EWv2OpenACC/EarthWorks/share/src/shr_infnan_mod.F90.in(73): error #7950: Procedure name in MODULE PROCEDURE          statement must be the name of accessible module procedure.   [SHR_INFNAN_ISNAN_REAL]
   module procedure shr_infnan_isnan_real
--------------------^
/glade/work/gdicker/EarthWorks/2023Nov01_EWv2OpenACC/EarthWorks/share/src/shr_infnan_mod.F90.in(71): error #7407: Unresolved MODULE PROCEDURE specification   name.   [SHR_INFNAN_ISNAN_DOUBLE]
   module procedure shr_infnan_isnan_double
--------------------^
/glade/work/gdicker/EarthWorks/2023Nov01_EWv2OpenACC/EarthWorks/share/src/shr_infnan_mod.F90.in(73): error #7407: Unresolved MODULE PROCEDURE specification   name.   [SHR_INFNAN_ISNAN_REAL]
   module procedure shr_infnan_isnan_real
--------------------^
compilation aborted for shr_infnan_mod.F90 (code 1)
gmake: *** [/glade/work/gdicker/EarthWorks/2023Nov01_EWv2OpenACC/cases/EW_dev2_NoOAcc_FHS94.mpasa120.derecho.intel.64/Tools/Makefile:992: shr_infnan_mod.o]   Error 1
gmake: *** Waiting for unfinished jobs....
gdicker1 commented 7 months ago

The errors noted here should be fixed by #28