This page provides strategies for investigating errors encountered while using GCHP.
Table of contents
Recompile using debug flags by setting
-DCMAKE_BUILD_TYPE=Debug during the configure step. See the section of the user guide on compiling GCHP for more guidance on how to do this. Once you rebuild there may be more information in the logs when you run again.
Besides compiling with
CMAKE_BUILD_TYPE=Debug, there are a few run-time settings you can configure to boost your chance of successful debugging.
All of them involve sending additional print statements to the log files.
Set Turn on debug printout? in
geoschem_config.ymlto T to turn on extra GEOS-Chem print statements in the main log file.
Set the Verbose and Warnings settings in
HEMCO_Config.rcto maximum values of 3 to send the maximum number of prints to
DEBUGto send root thread MAPL prints to
DEBUGto send all thread MAPL ExtData (input) prints to
None of these options require recompiling. Be aware that all of them will slow down your simulation. Be sure to set them back to the default values after you are finished debugging.
Memory statistics are printed to the GCHP log each model timestep by default. This includes percentage of memory committed, percentage of memory used, total used memory (MB), and total swap memory (MB). This information is always printed and is not configurable from the run directory. However, additional memory prints may be enabled by changing the value set for variable
MEMORY_DEBUG_LEVEL in run directory file
GCHP.rc. Setting this to a value greater than zero will print out total used memory and swap memory before and after run methods for gridded components GCHPctmEnv, FV3 advection, and GEOS-Chem. Within GEOS-Chem, total and swap memory will also be printed before and after subroutines to run GEOS-Chem, perform chemistry, and apply emissions. For more information about inspecting memory see the output files section of this user guide.