Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

spmd_utils.F90 compilation error for Serial compilation

Dear helper,       I got following error when I tried to make after I configured like this.  I can not figure out where I should set spmd issue right. Thanks for your help. $camcfg/configure -fc ifort -dyn fv -hgrid 10x15 -nospmd -nosmp -testmake -j2 >&!  make.out  --------ifort -c  -I. -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/chemistry/pp_trop_mam3 -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/
src/chemistry/modal_aero -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/chemistry/mozart -I/homedir/msun/cam5/cesm1_1_2/models/atm
/cam/src/chemistry/bulk_aero -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/chemistry/utils -I/homedir/msun/cam5/cesm1_1_2/models/
atm/cam/src/physics/rrtmg -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/physics/rrtmg/ext/rrt
mg_mcica -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/physics/rrtmg/ext/rrtmg_lw -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/s
rc/physics/rrtmg/ext/rrtmg_sw -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/physics/cam -I/homedir/msun/cam5/cesm1_1_2/models/atm
/cam/src/dynamics/fv -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/utils/pilgrim -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/sr
c/cpl_mct -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/cpl_share -I/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/control -I/ho
medir/msun/cam5/cesm1_1_2/models/atm/cam/src/utils -I/homedir/msun/cam5/cesm1_1_2/models/utils/timing -I/homedir/msun/cam5/cesm1_1_2/
models/utils/pio -I/homedir/msun/cam5/cesm1_1_2/models/utils/esmf_wrf_timemgr -I/homedir/msun/cam5/cesm1_1_2/models/drv/driver -I/hom
edir/msun/cam5/cesm1_1_2/models/drv/shr -I/homedir/msun/cam5/cesm1_1_2/models/ocn/docn -I/homedir/msun/cam5/cesm1_1_2/models/ocn/docn
/cpl_mct -I/homedir/msun/cam5/cesm1_1_2/models/lnd/clm/src/cpl_mct -I/homedir/msun/cam5/cesm1_1_2/models/lnd/clm/src/cpl_share -I/hom
edir/msun/cam5/cesm1_1_2/models/lnd/clm/src/main -I/homedir/msun/cam5/cesm1_1_2/models/lnd/clm/src/biogeophys -I/homedir/msun/cam5/ce
sm1_1_2/models/lnd/clm/src/biogeochem -I/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/drivers/cpl_mct -I/homedir/msun/cam5/cesm1_1
_2/models/ice/cice/src/drivers/cpl_share -I/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/mpi -I/homedir/msun/cam5/cesm1_1_2/models
/ice/cice/src/source -I/homedir/msun/cam5/cesm1_1_2/models/glc/sglc/cpl_mct -I/homedir/msun/cam5/cesm1_1_2/models/rof/rtm/src/cpl_mct
 -I/homedir/msun/cam5/cesm1_1_2/models/rof/rtm/src/cpl_share -I/homedir/msun/cam5/cesm1_1_2/models/rof/rtm/src/riverroute -I/homedir/
msun/cam5/cesm1_1_2/models/csm_share/shr -I/homedir/msun/cam5/cesm1_1_2/models/csm_share/dshr -I/usr/local/include/  -I/usr/local/inc
lude/ -I/homedir/msun/cam5/work/bld/mct/mct -I/homedir/msun/cam5/work/bld/mct/mpeu -I/homedir/msun/cam5/work/bld/mct/mpi-serial -DNO_
SHR_VMATH -DSEQ_MCT -DNO_C_SIZEOF -DFORTRANUNDERSCORE -DCO2A -DMAXPATCH_PFT=numpft+1 -DLSMLAT=1 -DLSMLON=1 -DPLON=24 -DPLAT=19 -DNUM_
COMP_INST_ATM=1 -DNUM_COMP_INST_LND=1 -DNUM_COMP_INST_OCN=1 -DNUM_COMP_INST_ICE=1 -DNUM_COMP_INST_GLC=1 -DNUM_COMP_INST_ROF=1 -DPLEV=
30 -DPCNST=25 -DPCOLS=16 -DPTRM=1 -DPTRN=1 -DPTRK=1 -DSTAGGERED  -DCCSMCOUPLED -Dcoupled -Dncdf -DNCAT=1 -DNXGLOB=24 -DNYGLOB=19 -DNT
R_AERO=0 -DBLCKX=24 -DBLCKY=19 -DMXBLCKS=1  -DMODAL_AERO -DMODAL_AERO_3MODE  -D_USEBOX -D_NETCDF   -DLINUX -DCPRINTEL -static -ftz -c
onvert big_endian -fp-model precise  -O2 -DHIDE_MPI -D_MPISERIAL -DNO_MPIMOD -DNO_MPI2 -DNO_SIZEOF  /homedir/msun/cam5/cesm1_1_2/mode
ls/atm/cam/src/utils/spmd_utils.F90
/homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/utils/spmd_utils.F90(51): error #6418: This name has already been assigned a data typ
e.   [MPI_STATUS_IGNORE]
   integer :: mpi_status_ignore     ! Needs to be defined in mpi-serial
--------------^
compilation aborted for /homedir/msun/cam5/cesm1_1_2/models/atm/cam/src/utils/spmd_utils.F90 (code 1)
gmake: *** [spmd_utils.o] Error 1
gmake: *** Waiting for unfinished jobs....
/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/source/ice_calendar.F90(374): (col. 15) remark: LOOP WAS VECTORIZED.
/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/source/ice_calendar.F90(376): (col. 15) remark: LOOP WAS VECTORIZED.
/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/source/ice_calendar.F90(385): (col. 12) remark: LOOP WAS VECTORIZED.
/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/source/ice_calendar.F90(390): (col. 18) remark: LOOP WAS VECTORIZED.
/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/source/ice_calendar.F90(392): (col. 18) remark: LOOP WAS VECTORIZED.
/homedir/msun/cam5/cesm1_1_2/models/ice/cice/src/source/ice_calendar.F90(403): (col. 18) remark: LOOP WAS VECTORIZED.
------------------------- Moguo
 

eaton

CSEG and Liaisons
Check whether /homedir/msun/cam5/work/bld/mct/mpi-serial/mpif.h  contains the name mpi_status_ignore.  If not (which is what I expect) then you need to figure out where the mpif.h that does contain mpi_status_ignore is coming from.  The CAM serial build expects to use mct/mpi-serial/mpif.h which should not contain that name.
 
Eaton,
       Thanks. You are right. But I still can't find the problem. I search all the *.h files and I found no mpi_status_ignore. Could you suggest where it could come from? Thanks. --------grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/advection/slt/hadvtest.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/dynamics/eul/comsta.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/dynamics/eul/parslt.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/dynamics/fv/comsta.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/dynamics/homme/share/interface.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/dynamics/homme/share/timer.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/dynamics/sld/comsta.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/physics/carma/base/carma_globaer.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/physics/cosp/cosp_defs.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/utils/dtypes.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/utils/pilgrim/debug.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/utils/pilgrim/mlp_ptr.h
grep -i mpi_status_ignore ./cesm1_1_2/models/atm/cam/src/utils/pilgrim/pilgrim.h
grep -i mpi_status_ignore ./cesm1_1_2/models/csm_share/shr/shr_isnan.h
grep -i mpi_status_ignore ./cesm1_1_2/models/csm_share/unit_testers/config.h
grep -i mpi_status_ignore ./cesm1_1_2/models/lnd/clm/tools/cprnc/dtypes.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/list.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/listops.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/listP.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/mpi.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/mpif.master.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/mpif.real4double8.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/mpif.real8double16.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/mpif.real8double8.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/mct/mpi-serial/mpiP.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/pio/dtypes.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/timing/gptl.h
grep -i mpi_status_ignore ./cesm1_1_2/models/utils/timing/private.h
grep -i mpi_status_ignore ./work/bld/mct/mpi-serial/mpif.h
grep -i mpi_status_ignore ./work/bld/mct/config.h
grep -i mpi_status_ignore ./work/bld/config.h
----------------- Thanks,Moguo    
 
Hi, Eaton,     I searched all files , not only *.h and I still could not find where it is defined. So, I go ahead to commented that line out in smpd_utils.F90 where it causes problem. The compilation goes well beyond that point and shows no error. I don't like this idea, but it seems only way to avoid the error right now.     Please let me know if you have concerns for my doing. Thanks.  Moguo 
 

eaton

CSEG and Liaisons
My guess is that the compiler is being invoked via a wrapper script which is responsible for adding mpi related paths. 
 
Top