Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
28383 Discussions

WRF ARW V3.9 Catastrophic error while compiling it.

Yang_L_1
Beginner
875 Views

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
RECORDLENGTH    =       -assume byterecl
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
CPP             =      /lib/cpp -P -nostdinc
AR              =      ar
ARFLAGS         =      ru
M4              =      m4
RANLIB          =      ranlib
RLFLAGS         =
CC_TOOLS        =      $(SCC) 

###########################################################
######################
# POSTAMBLE

FGREP = fgrep -iq

ARCHFLAGS       =    $(COREDEFS) -DIWORDSIZE=$(IWORDSIZE) -DDWORDSIZE=$(DWORDSIZE) -DRWORDSIZE=$(RWORDSIZE) -DLWORDSIZE=$(LWORDSIZE) \
                     $(ARCH_LOCAL) \
                     $(DA_ARCHFLAGS) \
                      -DDM_PARALLEL \
                       \
                      -DNETCDF \
                       \
                       \
                       \
                       \
                       \
                       \
                       \
                       \
                       \
                       \
                      -DUSE_ALLOCATABLES \
                      -DGRIB1 \
                      -DINTIO \
                      -DKEEP_INT_AROUND \
                      -DLIMIT_ARGS \
                      -DCONFIG_BUF_LEN=$(CONFIG_BUF_LEN) \
                      -DMAX_DOMAINS_F=$(MAX_DOMAINS) \
                      -DMAX_HISTORY=$(MAX_HISTORY) \
                      -DNMM_NEST=$(WRF_NMM_NEST)
CFLAGS          =    $(CFLAGS_LOCAL) -DDM_PARALLEL  \
                      -DMAX_HISTORY=$(MAX_HISTORY) -DNMM_CORE=$(WRF_NMM_CORE)
FCFLAGS         =    $(FCOPTIM) $(FCBASEOPTS)
ESMF_LIB_FLAGS  =    
# ESMF 5 -- these are defined in esmf.mk, included above
 ESMF_IO_LIB     =    -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
ESMF_IO_LIB_EXT =    -L$(WRF_SRC_ROOT_DIR)/external/esmf_time_f90 -lesmf_time
INCLUDE_MODULES =    $(MODULE_SRCH_FLAG) \
                     $(ESMF_MOD_INC) $(ESMF_LIB_FLAGS) \
                      -I$(WRF_SRC_ROOT_DIR)/main \
                      -I$(WRF_SRC_ROOT_DIR)/external/io_netcdf \
                      -I$(WRF_SRC_ROOT_DIR)/external/io_int \
                      -I$(WRF_SRC_ROOT_DIR)/frame \
                      -I$(WRF_SRC_ROOT_DIR)/share \
                      -I$(WRF_SRC_ROOT_DIR)/phys \
                      -I$(WRF_SRC_ROOT_DIR)/chem -I$(WRF_SRC_ROOT_DIR)/inc \
                      -I$(NETCDFPATH)/include \
                      
REGISTRY        =    Registry
CC_TOOLS_CFLAGS = -DNMM_CORE=$(WRF_NMM_CORE)

 LIB_BUNDLED     = \
                      $(WRF_SRC_ROOT_DIR)/external/fftpack/fftpack5/libfftpack.a \
                      $(WRF_SRC_ROOT_DIR)/external/io_grib1/libio_grib1.a \
                      $(WRF_SRC_ROOT_DIR)/external/io_grib_share/libio_grib_share.a \
                      $(WRF_SRC_ROOT_DIR)/external/io_int/libwrfio_int.a \
                      $(ESMF_IO_LIB) \
                      $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a \
                      $(WRF_SRC_ROOT_DIR)/frame/module_internal_header_util.o \
                      $(WRF_SRC_ROOT_DIR)/frame/pack_utils.o 

 LIB_EXTERNAL    = \
                      -L$(WRF_SRC_ROOT_DIR)/external/io_netcdf -lwrfio_nf -L/gpfs1/home/Libs/INTEL/NETCDF4/netcdf-4.4.1.1_with_v17/lib -lnetcdff -lnetcdf     

LIB             =    $(LIB_BUNDLED) $(LIB_EXTERNAL) $(LIB_LOCAL) $(LIB_WRF_HYDRO)
LDFLAGS         =    $(OMP) $(FCFLAGS) $(LDFLAGS_LOCAL) 
ENVCOMPDEFS     =    
WRF_CHEM        =       0 
CPPFLAGS        =    $(ARCHFLAGS) $(ENVCOMPDEFS) -I$(LIBINCLUDE) $(TRADFLAG) 
NETCDFPATH      =    /gpfs1/home/Libs/INTEL/NETCDF4/netcdf-4.4.1.1_with_v17
HDF5PATH        =    
WRFPLUSPATH     =    
RTTOVPATH       =    
PNETCDFPATH     =    

bundled:  io_only 
external: io_only $(WRF_SRC_ROOT_DIR)/external/RSL_LITE/librsl_lite.a gen_comms_rsllite module_dm_rsllite $(ESMF_TARGET)
io_only:  esmf_time wrfio_nf   \
          wrf_ioapi_includes wrfio_grib_share wrfio_grib1 wrfio_int fftpack


######################
------------------------------------------------------------------------
Settings listed above are written to configure.wrf.
If you wish to change settings, please edit that file.
If you wish to change the default options, edit the file:
     arch/configure_new.defaults
NetCDF users note:
 This installation of NetCDF supports large file support.  To DISABLE large file
 support in NetCDF, set the environment variable WRFIO_NCD_NO_LARGE_FILE_SUPPORT
 to 1 and run configure again. Set to any other value to avoid this message.
  

Testing for NetCDF, C and Fortran compiler

This installation of NetCDF is 64-bit
                 C compiler is 64-bit
           Fortran compiler is 64-bit
              It will build in 64-bit

iitmlogin5:/moes/home/yang/WRF_chem/WRFV3 $ ./compile em_real > compile.log
Intel(R) Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 14.0.2.144 Build 20140120
Copyright (C) 1985-2014 Intel Corporation.  All rights reserved.

ar: creating libesmf_time.a
ar: creating ./libio_grib_share.a
ar: creating ../libio_grib1.a
0.10user 0.28system 0:00.34elapsed 111%CPU (0avgtext+0avgdata 29804maxresident)k
0inputs+160outputs (0major+25859minor)pagefaults 0swaps
0.50user 0.32system 0:00.77elapsed 106%CPU (0avgtext+0avgdata 34384maxresident)k
0inputs+312outputs (0major+28532minor)pagefaults 0swaps
0.34user 0.35system 0:00.64elapsed 108%CPU (0avgtext+0avgdata 34116maxresident)k
0inputs+400outputs (0major+28753minor)pagefaults 0swaps
0.75user 0.38system 0:01.10elapsed 103%CPU (0avgtext+0avgdata 42540maxresident)k
0inputs+576outputs (0major+29966minor)pagefaults 0swaps
ar: creating libwrfio_int.a

real    0m0.601s
user    0m0.340s
sys     0m0.304s
0.17user 0.46system 0:00.63elapsed 100%CPU (0avgtext+0avgdata 54824maxresident)k
0inputs+304outputs (0major+36351minor)pagefaults 0swaps
ar: creating libfftpack.a
1.54user 0.24system 0:01.76elapsed 101%CPU (0avgtext+0avgdata 43680maxresident)k
0inputs+416outputs (0major+30901minor)pagefaults 0swaps
0.49user 0.33system 0:00.78elapsed 107%CPU (0avgtext+0avgdata 45160maxresident)k
0inputs+320outputs (0major+30938minor)pagefaults 0swaps
opening Registry/registry.dimspec
including Registry/registry.dimspec
opening Registry/Registry.EM_COMMON
including Registry/Registry.EM_COMMON
opening Registry/registry.io_boilerplate
including Registry/registry.io_boilerplate
opening Registry/io_boilerplate_temporary.inc
including Registry/io_boilerplate_temporary.inc
opening Registry/registry.fire
including Registry/registry.fire
opening Registry/registry.avgflx
including Registry/registry.avgflx
opening Registry/registry.stoch
including Registry/registry.stoch
opening Registry/registry.les
including Registry/registry.les
opening Registry/registry.cam
including Registry/registry.cam
opening Registry/registry.clm
including Registry/registry.clm
opening Registry/registry.ssib
including Registry/registry.ssib
opening Registry/registry.lake
including Registry/registry.lake
opening Registry/registry.diags
including Registry/registry.diags
opening Registry/registry.afwa
including Registry/registry.afwa
opening Registry/registry.rasm_diag
including Registry/registry.rasm_diag
opening Registry/registry.sbm
including Registry/registry.sbm
opening Registry/registry.elec
including Registry/registry.elec
opening Registry/registry.bdy_perturb
including Registry/registry.bdy_perturb

real    0m0.403s
user    0m0.100s
sys     0m0.340s
opening Registry/registry.hyb_coord
including Registry/registry.hyb_coord
opening Registry/registry.new3d_wif
including Registry/registry.new3d_wif

real    0m0.401s
user    0m0.109s
sys     0m0.324s
Registry INFO variable counts: 0d 2275 1d 124 2d 1068 3d 842
REGISTRY WARNING: aerod(grid%sm31,grid%sm32,grid%sm33,itrace): aerod_b is not a variable or number; ignoring it
REGISTRY WARNING: aerod(grid%sm31,grid%sm32,grid%sm33,itrace): aerod_bt is not a variable or number; ignoring it
REGISTRY WARNING: om_tmp: om_tmp_b is not a variable or number; ignoring it
REGISTRY WARNING: om_tmp: om_tmp_bt is not a variable or number; ignoring it
REGISTRY WARNING: om_s: om_s_b is not a variable or number; ignoring it
REGISTRY WARNING: om_s: om_s_bt is not a variable or number; ignoring it
REGISTRY WARNING: om_u: om_u_b is not a variable or number; ignoring it
REGISTRY WARNING: om_u: om_u_bt is not a variable or number; ignoring it
REGISTRY WARNING: om_v: om_v_b is not a variable or number; ignoring it
REGISTRY WARNING: om_v: om_v_bt is not a variable or number; ignoring it
REGISTRY WARNING: om_ml: om_ml_b is not a variable or number; ignoring it
REGISTRY WARNING: om_ml: om_ml_bt is not a variable or number; ignoring it
REGISTRY WARNING: field_sf: field_sf_b is not a variable or number; ignoring it
REGISTRY WARNING: field_sf: field_sf_bt is not a variable or number; ignoring it
REGISTRY WARNING: field_pbl: field_pbl_b is not a variable or number; ignoring it
REGISTRY WARNING: field_pbl: field_pbl_bt is not a variable or number; ignoring it
REGISTRY WARNING: field_conv: field_conv_b is not a variable or number; ignoring it
REGISTRY WARNING: field_conv: field_conv_bt is not a variable or number; ignoring it
REGISTRY WARNING: ru_tendf_stoch: ru_tendf_stoch_b is not a variable or number; ignoring it
REGISTRY WARNING: ru_tendf_stoch: ru_tendf_stoch_bt is not a variable or number; ignoring it
REGISTRY WARNING: rv_tendf_stoch: rv_tendf_stoch_b is not a variable or number; ignoring it
REGISTRY WARNING: rv_tendf_stoch: rv_tendf_stoch_bt is not a variable or number; ignoring it
REGISTRY WARNING: rt_tendf_stoch: rt_tendf_stoch_b is not a variable or number; ignoring it
REGISTRY WARNING: rt_tendf_stoch: rt_tendf_stoch_bt is not a variable or number; ignoring it
REGISTRY WARNING: rand_pert: rand_pert_b is not a variable or number; ignoring it
REGISTRY WARNING: rand_pert: rand_pert_bt is not a variable or number; ignoring it
REGISTRY WARNING: pattern_spp_conv: pattern_spp_conv_b is not a variable or number; ignoring it
REGISTRY WARNING: pattern_spp_conv: pattern_spp_conv_bt is not a variable or number; ignoring it
REGISTRY WARNING: pattern_spp_pbl: pattern_spp_pbl_b is not a variable or number; ignoring it
REGISTRY WARNING: pattern_spp_pbl: pattern_spp_pbl_bt is not a variable or number; ignoring it
REGISTRY WARNING: pattern_spp_lsm: pattern_spp_lsm_b is not a variable or number; ignoring it
REGISTRY WARNING: pattern_spp_lsm: pattern_spp_lsm_bt is not a variable or number; ignoring it
REGISTRY WARNING: rstoch: rstoch_b is not a variable or number; ignoring it
REGISTRY WARNING: rstoch: rstoch_bt is not a variable or number; ignoring it
REGISTRY WARNING: field_u_tend_perturb: field_u_tend_perturb_b is not a variable or number; ignoring it
REGISTRY WARNING: field_u_tend_perturb: field_u_tend_perturb_bt is not a variable or number; ignoring it
REGISTRY WARNING: field_v_tend_perturb: field_v_tend_perturb_b is not a variable or number; ignoring it
REGISTRY WARNING: field_v_tend_perturb: field_v_tend_perturb_bt is not a variable or number; ignoring it
REGISTRY WARNING: field_t_tend_perturb: field_t_tend_perturb_b is not a variable or number; ignoring it
REGISTRY WARNING: field_t_tend_perturb: field_t_tend_perturb_bt is not a variable or number; ignoring it
ADVISORY: RSL_LITE version of gen_comms is linked in with registry program.

real    0m0.667s
user    0m0.320s
sys     0m0.378s

 

 

catastrophic error: **Internal compiler error: segmentation violation signal raised** Please report this error along with the circumstances in which it occurred in a Software Problem Report.  Note: File and line given may not be explicit cause of this error.
compilation aborted for module_bl_temf.f90 (code 1)

real    0m1.313s
user    0m0.966s
sys     0m0.383s
make[3]: [module_bl_temf.o] Error 1 (ignored)

#######################################################################################################################

I am using , Intel(R) Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 14.0.2.144 Build 20140120.... does anyone have any idea then do let me know. In addition, I am using WRF V3.9. If any suggestions by anyone, it will be highly appreciated. I have tried bunch of NETCDF v4.4.1.1/ NETCDF 4.4.1 libraries, no luck.  

0 Kudos
2 Replies
mecej4
Honored Contributor III
875 Views

I think that your chances of having the compiler bug resolved would be better if you can submit the source file (or an abbreviated version of it) that causes an ICE. WRF requires registration and downloading a large source distribution with hundreds of files. Having the single problematic source file would allow one to sidestep this hurdle.

The compiler version that you used is quite old. If the ICE is not present in the current IFort compiler, you may need to consider upgrading the compiler.

0 Kudos
Kevin_D_Intel
Employee
875 Views

There was a known issue with the 14.0.2 compiler you have that was reported here some time back and which others note is fixed in a newer 14.0 compiler Update 3. If WRF requires the older 14.0 compiler than upgrading to at least the 14.0 Update 3 would appear to resolve the internal error.

 

0 Kudos
Reply