I am trying to run the benchmark for CMAQv5.3 but I am running into a segmentation fault (signal 11) at 23:55:00 in the simulation. Tired making the stack size unlimited using ulimit -s unlimited but that didnt have any effect. Any help is appreciated. The log file for the run is attached below.
Would you mind trying to run using the optimized run and see if it runs to completion?
Comment out the Debug_CCTM option as follows in the bldit_cctm.csh script.
You are now getting the following additional information in the log file:
0 0x2B8BA546ECB0 #1 0x2B8BA546DEB0 #2 0x2B8BA63504AF #3 0x45A0B2 in pshut3_ #4 0x6A05A1 in cmaq_driver_ #5 0x695C3C in MAIN__ at cmaq_main.F:?
I am not sure, but I did notice that the version of I/O API that you are using is older than the one I have used to successfully run the benchmark case.
ioapi-3.2: $Id: init3.F90 120 2019-06-21 14:18:20Z coats $
Version with PARMS3.EXT/PARAMETER::MXVARS3= 2048
netCDF version 4.7.0 of Jun 28 2019 14:56:39 $
Your version was about a year older.
ioapi-3.2: $Id: init3.F90 98 2018-04-05 14:35:07Z coats $
MPI/PnetCDF parallel-I/O enabled
PnetCDF Library Version "1.7.0 of 03 Mar 2016"
netCDF version 4.6.2 of Dec 23 2018 20:16:40 $
Please consider following these instructions to download and install the latest version of the netCDF and I/O API libraries.
I have succesfully downloaded and installed the latest version of netCDF (4.7.1) and I/O API (3.2) libraries. I set the locations in the config_cmaq.csh file as shown.
After recompiling using bldit_cctm.csh gcc |& tee bldit_cctm.log, I noticed I still get the old version of netcdf 4.6.2 when I try and run the benchmark test. Is there something I am doing wrong here.
Are you compiling CMAQ in debug mode?
If so, try compiling and running in optimized mode. #set Debug_CCTM #> uncomment to compile CCTM with debug option equal to TRUE
Here is a reference on causes of segmentation faults that may be helpful. https://kb.iu.edu/d/aqsj
The last line in your output file was
Data Output completed
This line is in the RUNTIME_VARS.F
The backtrace has the following information #0 0x2B2763916CB0 #1 0x2B2763915EB0 #2 0x2B27647F84AF #3 0x458962 in pshut3_ #4 0x69EE51 in cmaq_driver_ #5 0x6944EC in MAIN__ at cmaq_main.F:?
You could try changing the following setting to 1:
#> Toggle Diagnostic Mode which will print verbose information to
#> standard output
setenv CTM_DIAG_LVL 0
If you are using the default settings for the following options, I would try turning them off.
setenv PRINT_PROC_TIME Y #> Print timing for all science subprocesses to Logfile
#> [ default: TRUE or Y ]
setenv STDOUT T #> Override I/O-API trying to write information to both the processor
#> logs and STDOUT [ options: T | F ]
Can you also share the contents of your CTM_LOG file for the 000 processor:
CTM_LOG_000.v53_gcc_Bench_2016_12SE1_20160701
This is typically moved to the following directory at the end of the run, or it may still be in your run directory.
data/output_CCTM_v53_gcc_Bench_2016_12SE1/LOGS
Also - do you know if you are running with parallel i/o?