[Wrf-users] WRF/WPS Parallel Compile Issues

Mark Potter mpotter at pcpcdirect.com
Tue Feb 14 11:20:46 MST 2017


Everything is compiled with the same compiler, it took forever. The module it's referencing is actually compiled during the WRF compile, from what I can tell, which makes the error all the more uninformative.

Get Outlook for Android<https://aka.ms/ghei36>




On Tue, Feb 14, 2017 at 11:46 AM -0600, "Ever Daniel Barreto Rojas" <everdaniel at gmail.com<mailto:everdaniel at gmail.com>> wrote:

Hey there,

just my 2 cents, from this message:

module_dm.f90(1136): error #7013: This module file was not generated by any release of this compiler.   [MPI]

it makes it sound as if the model was not generate with the compiler you're currently using. Did you use the same compiler to compile the other dependencies?

Did you tried to follow this tutorial?:
http://www2.mmm.ucar.edu/wrf/OnLineTutorial/compilation_tutorial.php


---
Ever Daniel Barreto Rojas
everdaniel at gmail dot com

2017-02-14 10:46 GMT-03:00 Mark Potter <mpotter at pcpcdirect.com<mailto:mpotter at pcpcdirect.com>>:
I am attempting to compile WRF/WPS with the Intel Parallel Suite 2017 U1. I have compiled all of the requirements (HDF5, NetCDF, Jasper, et al) with the same compiler. Here are the relevant bits from configure.wrf

-----

DESCRIPTION     =       INTEL ($SFC/$SCC)
DMPARALLEL      =        1
OMPCPP          =       # -D_OPENMP
OMP             =       # -openmp -fpp -auto
OMPCC           =       # -openmp -fpp -auto
SFC             =       ifort
SCC             =       icc
CCOMP           =       icc
DM_FC           =       mpif90 -f90=$(SFC)
DM_CC           =       mpicc -cc=$(SCC) -DMPI2_SUPPORT
FC              =       time $(DM_FC)
CC              =       $(DM_CC) -DFSEEKO64_OK
LD              =       $(FC)
RWORDSIZE       =       $(NATIVE_RWORDSIZE)
PROMOTION       =       -real-size `expr 8 \* $(RWORDSIZE)` -i4
ARCH_LOCAL      =       -DNONSTANDARD_SYSTEM_FUNC  -DWRF_USE_CLM
CFLAGS_LOCAL    =       -w -O3 -ip #-xHost -fp-model fast=2 -no-prec-div -no-prec-sqrt -ftz -no-multibyte-chars
LDFLAGS_LOCAL   =       -ip #-xHost -fp-model fast=2 -no-prec-div -no-prec-sqrt -ftz -align all -fno-alias -fno-common
CPLUSPLUSLIB    =
ESMF_LDFLAG     =       $(CPLUSPLUSLIB)
FCOPTIM         =       -O3
FCREDUCEDOPT    =       $(FCOPTIM)
FCNOOPT         =       -O0 -fno-inline -no-ip
FCDEBUG         =       # -g $(FCNOOPT) -traceback # -fpe0 -check noarg_temp_created,bounds,format,output_conversion,pointers,uninit -ftrapuv -unroll0 -u
FORMAT_FIXED    =       -FI
FORMAT_FREE     =       -FR
FCSUFFIX        =
BYTESWAPIO      =       -convert big_endian
FCBASEOPTS_NO_G =       -ip -fp-model precise -w -ftz -align all -fno-alias $(FORMAT_FREE) $(BYTESWAPIO) #-xHost -fp-model fast=2 -no-heap-arrays -no-prec-div -no-prec-sqrt -fno-common
FCBASEOPTS      =       $(FCBASEOPTS_NO_G) $(FCDEBUG)
MODULE_SRCH_FLAG =
TRADFLAG        =      -traditional
CPP             =      /lib/cpp -P
AR              =      ar
ARFLAGS         =      ru
M4              =      m4
RANLIB          =      ranlib
RLFLAGS         =
CC_TOOLS        =      $(SCC)

----

The last attempt was with -j 1

----

setting serial make -j 1

==============================================================================================

The following indicate the compilers selected to build the WRF system

Serial Fortran compiler (mostly for tool generation):
which SFC
/apps/intel/2017.u1/compilers_and_libraries_2017.1.132/linux/bin/intel64/ifort

Serial C compiler (mostly for tool generation):
which SCC
/apps/intel/2017.u1/compilers_and_libraries_2017.1.132/linux/bin/intel64/icc

Fortran compiler for the model source code:
which FC
/apps/intel/2017.u1/compilers_and_libraries_2017.1.132/linux/mpi/intel64/bin/mpif90
Will use 'time' to report timing information

C compiler for the model source code:
which CC
/apps/intel/2017.u1/compilers_and_libraries_2017.1.132/linux/mpi/intel64/bin/mpicc

==============================================================================================

----

Everything appears to compile fine for quite a bit of the compile until this error:

/apps/incoming/Lerach-requests/3.8.1/WRFV3/tools/standard.exe module_dm.F > module_dm.b
/lib/cpp -P -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/inc -DEM_CORE=1 -DNMM_CORE=0 -DNMM_MAX_DIM=2600 -DCOAMPS_CORE=0 -DDA_CORE=0 -DEXP_CORE=0 -DIWORDSIZE=4 -DDWORDSIZE=8 -DRWORDSIZE=4 -DLWORDSIZE=4 -DNONSTANDARD_SYSTEM_FUNC  -DWRF_USE_CLM  -DDM_PARALLEL -DNETCDF -DUSE_ALLOCATABLES -DGRIB1 -DINTIO -DKEEP_INT_AROUND -DLIMIT_ARGS -DCONFIG_BUF_LEN=65536 -DMAX_DOMAINS_F=21 -DMAX_HISTORY=25 -DNMM_NEST=0  -I. -traditional   module_dm.b  > module_dm.f90
rm -f module_dm.b
if fgrep -iq '!$OMP' module_dm.f90 ; then \
          if [ -n "" ] ; then echo COMPILING module_dm.F WITH OMP ; fi ; \
          time mpif90 -f90=ifort -c -real-size `expr 8 \* 4` -i4 -O0 -fno-inline -no-ip -ip -fp-model precise -w -ftz -align all -fno-alias -FR -convert big_endian   -I../dyn_em -I../dyn_nmm   -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/external/esmf_time_f90  -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/main -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/external/io_netcdf -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/external/io_int -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/frame -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/share -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/phys -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/chem -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/inc -I/apps/netcdf-fortran/4.4.4/intel-mpi/include    module_dm.f90 ; \
        else \
          if [ -n "" ] ; then echo COMPILING module_dm.F WITHOUT OMP ; fi ; \
          time mpif90 -f90=ifort -c -real-size `expr 8 \* 4` -i4 -O0 -fno-inline -no-ip -ip -fp-model precise -w -ftz -align all -fno-alias -FR -convert big_endian   -I../dyn_em -I../dyn_nmm   -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/external/esmf_time_f90  -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/main -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/external/io_netcdf -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/external/io_int -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/frame -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/share -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/phys -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/chem -I/apps/incoming/Lerach-requests/3.8.1/WRFV3/inc -I/apps/netcdf-fortran/4.4.4/intel-mpi/include   module_dm.f90 ; \
        fi
module_dm.f90(1136): error #7013: This module file was not generated by any release of this compiler.   [MPI]
      use mpi
----------^
module_dm.f90(1176): error #7013: This module file was not generated by any release of this compiler.   [MPI]
      use mpi
----------^
module_dm.f90(1216): error #7013: This module file was not generated by any release of this compiler.   [MPI]
      use mpi
----------^
module_dm.f90(5909): error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [MODULE_DM]
      USE module_dm
----------^
module_dm.f90(5915): error #6410: This name has not been declared as an array or a function.   [ID_STACK]
      id_stack(communicator_stack_cursor) = current_id
------^
module_dm.f90(5916): error #6410: This name has not been declared as an array or a function.   [LOCAL_COMMUNICATOR_STACK]
      local_communicator_stack( communicator_stack_cursor )    =    local_communicator
------^
module_dm.f90(5917): error #6410: This name has not been declared as an array or a function.   [LOCAL_COMMUNICATOR_PERIODIC_STACK]
      local_communicator_periodic_stack( communicator_stack_cursor )  =    local_communicator_periodic
------^
module_dm.f90(5918): error #6410: This name has not been declared as an array or a function.   [LOCAL_IOCOMMUNICATOR_STACK]
      local_iocommunicator_stack( communicator_stack_cursor )  =    local_iocommunicator
------^
module_dm.f90(5919): error #6410: This name has not been declared as an array or a function.   [LOCAL_COMMUNICATOR_X_STACK]
      local_communicator_x_stack( communicator_stack_cursor )  =    local_communicator_x
------^
module_dm.f90(5920): error #6410: This name has not been declared as an array or a function.   [LOCAL_COMMUNICATOR_Y_STACK]
      local_communicator_y_stack( communicator_stack_cursor )  =    local_communicator_y
------^
module_dm.f90(5921): error #6410: This name has not been declared as an array or a function.   [NTASKS_STACK]
------^
module_dm.f90(5922): error #6410: This name has not been declared as an array or a function.   [NTASKS_Y_STACK]
      ntasks_y_stack( communicator_stack_cursor )      =    ntasks_y
------^
module_dm.f90(5923): error #6410: This name has not been declared as an array or a function.   [NTASKS_X_STACK]
      ntasks_x_stack( communicator_stack_cursor )      =    ntasks_x
------^
module_dm.f90(5924): error #6410: This name has not been declared as an array or a function.   [MYTASK_STACK]
      mytask_stack( communicator_stack_cursor )        =    mytask
------^
module_dm.f90(5925): error #6410: This name has not been declared as an array or a function.   [MYTASK_X_STACK]
      mytask_x_stack( communicator_stack_cursor )       =    mytask_x
------^
module_dm.f90(5926): error #6410: This name has not been declared as an array or a function.   [MYTASK_Y_STACK]
      mytask_y_stack( communicator_stack_cursor )       =    mytask_y
------^
module_dm.f90(5931): error #7002: Error in opening the compiled module file.  Check INCLUDE paths.   [MODULE_DM]
      USE module_dm
----------^
module_dm.f90(5933): error #6404: This name does not have a type, and must have an explicit type.   [COMMUNICATOR_STACK_CURSOR]
      IF ( communicator_stack_cursor .LT. 1 ) CALL wrf_error_fatal3("module_dm.b",2515,&
-----------^
module_dm.f90(5935): error #6404: This name does not have a type, and must have an explicit type.   [CURRENT_ID]
      current_id = id_stack(communicator_stack_cursor)
------^
module_dm.f90(5935): error #6404: This name does not have a type, and must have an explicit type.   [ID_STACK]
      current_id = id_stack(communicator_stack_cursor)
-------------------^
module_dm.f90(5936): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR]
      local_communicator = local_communicator_stack( communicator_stack_cursor )
------^
module_dm.f90(5936): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_STACK]
      local_communicator = local_communicator_stack( communicator_stack_cursor )
---------------------------^
module_dm.f90(5937): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_PERIODIC]
      local_communicator_periodic = local_communicator_periodic_stack( communicator_stack_cursor )
------^
module_dm.f90(5937): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_PERIODIC_STACK]
      local_communicator_periodic = local_communicator_periodic_stack( communicator_stack_cursor )
------------------------------------^
module_dm.f90(5938): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_IOCOMMUNICATOR]
      local_iocommunicator = local_iocommunicator_stack( communicator_stack_cursor )
------^
module_dm.f90(5938): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_IOCOMMUNICATOR_STACK]
      local_iocommunicator = local_iocommunicator_stack( communicator_stack_cursor )
-----------------------------^
module_dm.f90(5939): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_X]
      local_communicator_x = local_communicator_x_stack( communicator_stack_cursor )
------^
module_dm.f90(5939): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_X_STACK]
      local_communicator_x = local_communicator_x_stack( communicator_stack_cursor )
-----------------------------^
module_dm.f90(5940): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_Y]
      local_communicator_y = local_communicator_y_stack( communicator_stack_cursor )
------^
module_dm.f90(5940): error #6404: This name does not have a type, and must have an explicit type.   [LOCAL_COMMUNICATOR_Y_STACK]
      local_communicator_y = local_communicator_y_stack( communicator_stack_cursor )
-----------------------------^
module_dm.f90(6581): catastrophic error: Too many errors, exiting
compilation aborted for module_dm.f90 (code 1)

----

Of course this leads to more errors and the compile fails. I get the same error from a fresh source tree or using clean -C. I have checked and module_dm.f90 does not exist before the compile so it is being compiled by the same compiler. I am not a developer by any stretch, I am an HPC cluster admin, however I have never had this much trouble compiling any package. I am hoping that someone on the list can help. I can post my full ENV and the full compile log if necessary.


--
Regards,

Mark L. Potter, RHCSA
Senior Consultant
PCPC Direct, Ltd.
O: 713-344-0952<tel:(713)%20344-0952>
M: 713-965-4133<tel:(713)%20965-4133>
S: mpotter at pcpcdirect.com<mailto:mpotter at pcpcdirect.com>

Controlling a laser with Linux is crazy, but everyone in this room is
crazy in his own way. So if you want to use Linux to control an
industrial welding laser, I have no problem with your using PREEMPT_RT.
- Linus Torvalds


_______________________________________________
Wrf-users mailing list
Wrf-users at ucar.edu<mailto:Wrf-users at ucar.edu>
http://mailman.ucar.edu/mailman/listinfo/wrf-users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/wrf-users/attachments/20170214/9feef10f/attachment-0001.html 


More information about the Wrf-users mailing list