-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
2112: Simplify configurations for performance jobs r=nefrathenrici a=nefrathenrici Content - Splits up `AtmosConfig` constructor, for a clearer flow and dispatch on `Dicts`, `Strings` (filepath) and `Nothing`. This allows for circumventing the CLI and adds another entry point in the config generation flow. This is technically a breaking change, and might need to be changed before merging. - Add `perf/common.jl` with two new functions to easily generate configurations for performance jobs. `AtmosCoveragePerfConfig` takes in a config dictionary, overrides the default performance configuration, and passes it to `AtmosConfig`. `TargetJobConfig` takes in a job id, and constructs its corresponding `AtmosConfig` - Rework `flame.jl`, `jet_test_nfailures.jl`, and `benchmark.jl` to maintain continuity for the perf tests. Apply this change for the relevant buildkite jobs in `pipeline.yml`. - Add tests for `AtmosCoveragePerfConfig` Co-authored-by: nefrathenrici <[email protected]>
- Loading branch information
Showing
32 changed files
with
209 additions
and
144 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
job_id: "checkbounds" | ||
job_id: "checkbounds" |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
diagnostics: | ||
- reduction_time: "average" | ||
short_name: "ua" | ||
period: "1secs" | ||
- reduction_time: "max" | ||
short_name: "va" | ||
period: "1secs" | ||
- reduction_time: "max" | ||
short_name: "ta" | ||
period: "1secs" | ||
job_id: "flame_perf_diagnostics" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
dz_bottom: 300.0 | ||
rayleigh_sponge: true | ||
toml: | ||
- "toml/flame_perf_gw.toml" | ||
orographic_gravity_wave: "raw_topo" | ||
idealized_insolation: false | ||
non_orographic_gravity_wave: true | ||
job_id: "flame_perf_gw" | ||
z_max: 45000.0 |
File renamed without changes.
1 change: 0 additions & 1 deletion
1
...f_configs/flame/perf_target_callbacks.yml → ...f_configs/flame_perf_target_callbacks.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,4 @@ | ||
dt_save_to_disk: "1secs" | ||
dt_save_restart: "1secs" | ||
dt_rad: "1secs" | ||
dt_save_to_sol: "1secs" | ||
job_id: "flame_perf_target_callbacks" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
dt_save_to_disk: "600secs" | ||
edmfx_entr_model: "ConstantTimescale" | ||
edmfx_nh_pressure: true | ||
edmfx_upwinding: "first_order" | ||
prognostic_tke: true | ||
edmfx_sgs_flux: true | ||
turbconv: "diagnostic_edmfx" | ||
job_id: "flame_perf_target_diagnostic_edmfx" | ||
edmfx_detr_model: "ConstantCoefficient" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
rad: ~ | ||
apply_limiter: false | ||
dt_save_to_disk: "10secs" | ||
precip_model: ~ | ||
turbconv: "edmf" | ||
post_process: false | ||
FLOAT_TYPE: "Float64" | ||
job_id: "flame_perf_target_edmf" | ||
z_stretch: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
dt_save_to_disk: "30secs" | ||
reference_job_id: "sphere_baroclinic_wave_rhoe_equilmoist" | ||
ode_algo: "SSP33ShuOsher" | ||
initial_condition: "MoistBaroclinicWaveWithEDMF" | ||
edmfx_entr_model: "ConstantCoefficient" | ||
edmfx_detr_model: "ConstantCoefficient" | ||
edmfx_sgs_flux: true | ||
turbconv: "edmfx" | ||
job_id: "flame_perf_target_edmfx" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
job_id: "flame_perf_target_threaded" |
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1 @@ | ||
target_job: "sphere_baroclinic_wave_rhoe_equilmoist_edmf" | ||
moist: "dry" | ||
precip_model: ~ | ||
rad: ~ | ||
job_id: "jet_n_failures" | ||
job_id: "jet_n_failures" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
import YAML | ||
|
||
""" | ||
AtmosCoveragePerfConfig() | ||
AtmosCoveragePerfConfig(; config_dict) | ||
Creates a model configuration that covers many physics components. | ||
The configuration precedence is as follows: | ||
1. Configuration from the given config file/dict (highest precendence) | ||
2. Default perf configuration (to increase coverage) | ||
3. Default configuration (lowest precedence) | ||
""" | ||
function AtmosCoveragePerfConfig(config_dict = Dict()) | ||
perf_default_config = perf_config_dict() | ||
config_dict = merge(perf_default_config, config_dict) | ||
return CA.AtmosConfig(config_dict) | ||
end | ||
|
||
""" | ||
TargetJobConfig(target_job) | ||
Creates a full model configuration from the given target job. | ||
""" | ||
TargetJobConfig(target_job) = | ||
CA.AtmosConfig(CA.config_from_target_job(target_job)) | ||
|
||
|
||
""" | ||
perf_config_dict() | ||
Loads the default performance configuration from a file into a Dict. | ||
""" | ||
function perf_config_dict() | ||
perf_defaults = joinpath( | ||
dirname(@__FILE__), | ||
"..", | ||
"config", | ||
"default_configs", | ||
"default_perf.yml", | ||
) | ||
return YAML.load_file(perf_defaults) | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.