Skip to content

Commit 5fe595d

Browse files
committed
Add CLI arg for walltime logging
1 parent 5d4a2a4 commit 5fe595d

File tree

3 files changed

+8
-1
lines changed

3 files changed

+8
-1
lines changed

experiments/ClimaEarth/cli_options.jl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,10 @@ function argparse_settings()
141141
help = "An optional YAML file used to overwrite the default model parameters."
142142
arg_type = String
143143
default = nothing
144+
"--atmos_log_progress"
145+
help = "Use the ClimaAtmos walltime logging callback instead of the default ClimaCoupler one [`false` (default), `true`]"
146+
arg_type = Bool
147+
default = false
144148
"--albedo_model"
145149
help = "Type of albedo model. [`ConstantAlbedo`, `RegressionFunctionAlbedo`, `CouplerAlbedo` (default)]"
146150
arg_type = String

experiments/ClimaEarth/components/atmosphere/climaatmos.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -626,6 +626,7 @@ function get_atmos_config_dict(
626626
# can pick up from where we have left. NOTE: This should not be needed, but
627627
# there is no easy way to initialize ClimaAtmos with a different t_start
628628
atmos_config["dt_save_state_to_disk"] = coupler_config["checkpoint_dt"]
629+
atmos_config["log_progress"] = coupler_config["atmos_log_progress"]
629630

630631
# The Atmos `get_simulation` function expects the atmos config to contains its timestep size
631632
# in the `dt` field. If there is a `dt_atmos` field in coupler_config, we add it to the atmos config as `dt`

experiments/ClimaEarth/setup_run.jl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -510,7 +510,9 @@ function CoupledSimulation(config_dict::AbstractDict)
510510
(coupled_sim) -> report_walltime(wt, coupled_sim.model_sims.atmos_sim.integrator)
511511
end
512512
walltime_cb = TimeManager.Callback(walltime_report_cond, walltime_affect!)
513-
callbacks = (checkpoint_cb, walltime_cb)
513+
# Disable coupler walltime logging if atmos is using its own walltime logging is true
514+
callbacks =
515+
config_dict["atmos_log_progress"] ? (checkpoint_cb,) : (checkpoint_cb, walltime_cb)
514516

515517
#= Set up default AMIP diagnostics
516518
Use ClimaDiagnostics for default AMIP diagnostics, which currently include turbulent energy fluxes.

0 commit comments

Comments
 (0)