diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml index c29f05480e..601c61afcd 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml @@ -67,28 +67,28 @@ steps: - label: ":computer: single column radiative equilibrium gray" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_radiative_equilibrium_gray.yml --job_id single_column_radiative_equilibrium_gray artifact_paths: "single_column_radiative_equilibrium_gray/output_active/*" - label: ":computer: single column radiative equilibrium clearsky" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_radiative_equilibrium_clearsky.yml --job_id single_column_radiative_equilibrium_clearsky artifact_paths: "single_column_radiative_equilibrium_clearsky/output_active/*" - label: ":computer: single column radiative equilibrium clearsky prognostic surface temperature" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_radiative_equilibrium_clearsky_prognostic_surface_temp.yml --job_id single_column_radiative_equilibrium_clearsky_prognostic_surface_temp artifact_paths: "single_column_radiative_equilibrium_clearsky_prognostic_surface_temp/output_active/*" - label: ":computer: single column radiative equilibrium allsky idealized clouds varying insolation" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_radiative_equilibrium_allsky_idealized_clouds.yml --job_id single_column_radiative_equilibrium_allsky_idealized_clouds artifact_paths: "single_column_radiative_equilibrium_allsky_idealized_clouds/output_active/*" @@ -97,7 +97,7 @@ steps: steps: - label: ":umbrella: 1-moment precipitation sanity test single column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_precipitation_test.yml --job_id single_column_precipitation_test artifact_paths: "single_column_precipitation_test/output_active/*" @@ -131,7 +131,7 @@ steps: - label: ":computer: single column non-orographic gravity wave parameterization" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_nonorographic_gravity_wave.yml --job_id single_column_nonorographic_gravity_wave artifact_paths: "single_column_nonorographic_gravity_wave/*" @@ -141,7 +141,7 @@ steps: - label: ":computer: single column hydrostatic balance float64" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/single_column_hydrostatic_balance_ft64.yml --job_id single_column_hydrostatic_balance_ft64 artifact_paths: "single_column_hydrostatic_balance_ft64/output_active/*" @@ -151,21 +151,21 @@ steps: - label: ":computer: Box hydrostatic balance (ρe_tot)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/box_hydrostatic_balance_rhoe.yml --job_id box_hydrostatic_balance_rhoe artifact_paths: "box_hydrostatic_balance_rhoe/output_active/*" - label: ":computer: 3D density current" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/box_density_current_test.yml --job_id box_density_current_test artifact_paths: "box_density_current_test/output_active/*" - label: ":computer: Box (ρe_tot) rcemipii with diagnostic edmf" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/rcemipii_box_diagnostic_edmfx.yml --job_id rcemipii_box_diagnostic_edmfx artifact_paths: "rcemipii_box_diagnostic_edmfx/output_active/*" @@ -174,7 +174,7 @@ steps: - label: ":genie: LES ISDAC in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/les_isdac_box.yml --job_id les_isdac_box artifact_paths: "les_isdac_box/*" @@ -189,21 +189,21 @@ steps: steps: - label: ":computer: Agnesi linear hydrostatic mountain experiment (uniform)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/plane_agnesi_mountain_test_uniform.yml --job_id plane_agnesi_mountain_test_uniform artifact_paths: "plane_agnesi_mountain_test_uniform/output_active/*" - label: ":computer: Agnesi linear hydrostatic mountain experiment (stretched)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/plane_agnesi_mountain_test_stretched.yml --job_id plane_agnesi_mountain_test_stretched artifact_paths: "plane_agnesi_mountain_test_stretched/output_active/*" - label: ":computer: Density current experiment" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/plane_density_current_test.yml --job_id plane_density_current_test artifact_paths: "plane_density_current_test/output_active/*" @@ -214,19 +214,19 @@ steps: - label: ":computer: baroclinic wave check conservation" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_conservation.yml + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_conservation.yml --job_id sphere_baroclinic_wave_conservation artifact_paths: "sphere_baroclinic_wave_conservation/output_active/*" - label: ":computer: baroclinic wave check conservation float64" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_conservation_ft64.yml + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_conservation_ft64.yml --job_id sphere_baroclinic_wave_conservation_ft64 artifact_paths: "sphere_baroclinic_wave_conservation_ft64/output_active/*" - label: ":computer: baroclinic wave check conservation with sources" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_conservation_source.yml + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_conservation_source.yml --job_id sphere_baroclinic_wave_conservation_source artifact_paths: "sphere_baroclinic_wave_conservation_source/output_active/*" @@ -235,7 +235,7 @@ steps: - label: ":computer: hydrostatic balance (ρe) float64" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_hydrostatic_balance_rhoe_ft64.yml --job_id sphere_hydrostatic_balance_rhoe_ft64 artifact_paths: "sphere_hydrostatic_balance_rhoe_ft64/output_active/*" @@ -245,14 +245,14 @@ steps: - label: ":computer: baroclinic wave (ρe)" key: sphere_baroclinic_wave_rhoe command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_rhoe.yml --job_id sphere_baroclinic_wave_rhoe artifact_paths: "sphere_baroclinic_wave_rhoe/output_active/*" - label: ":computer: no lim baroclinic wave (ρe) equilmoist" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_rhoe_equilmoist.yml --job_id sphere_baroclinic_wave_rhoe_equilmoist @@ -265,7 +265,7 @@ steps: - label: ":computer: no lim baroclinic wave (ρe) equilmoist (deep sphere)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/deep_sphere_baroclinic_wave_rhoe_equilmoist.yml --job_id deep_sphere_baroclinic_wave_rhoe_equilmoist @@ -279,7 +279,7 @@ steps: # Add this back when we figure out what to do with SSP and zalesak # - label: ":computer: SSP zalesak tracer & energy upwind baroclinic wave (ρe_tot) equilmoist" # command: > - # julia --color=yes --project=examples examples/hybrid/driver.jl + # julia --color=yes --project=perf examples/hybrid/driver.jl # --config_file $CONFIG_PATH/$$JOB_NAME.yml # --job_id JOB_NAME # artifact_paths: "$$JOB_NAME/output_active/*" @@ -291,14 +291,14 @@ steps: - label: ":computer: held suarez (ρe) hightop" key: sphere_held_suarez_rhoe_hightop command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_held_suarez_rhoe_hightop.yml --job_id sphere_held_suarez_rhoe_hightop artifact_paths: "sphere_held_suarez_rhoe_hightop/output_active/*" - label: ":computer: no lim held suarez (ρe) equilmoist hightop sponge" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_held_suarez_rhoe_equilmoist_hightop_sponge.yml --job_id sphere_held_suarez_rhoe_equilmoist_hightop_sponge @@ -314,7 +314,7 @@ steps: - label: ":umbrella: aquaplanet (ρe_tot) equil allsky monin_obukhov varying insol gravity wave (gfdl_restart) high top 1-moment" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_aquaplanet_rhoe_equilmoist_allsky_gw_res.yml --job_id sphere_aquaplanet_rhoe_equilmoist_allsky_gw_res artifact_paths: "sphere_aquaplanet_rhoe_equilmoist_allsky_gw_res/output_active/*" @@ -323,7 +323,7 @@ steps: - label: ":computer: aquaplanet (ρe_tot) equil allsky monin_obukhov varying insol gravity wave (raw_topo) high top zonally asymmetric" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_aquaplanet_rhoe_equilmoist_allsky_gw_raw_zonallyasymmetric.yml --job_id sphere_aquaplanet_rhoe_equilmoist_allsky_gw_raw_zonallyasymmetric @@ -337,7 +337,7 @@ steps: - label: ":computer: aquaplanet (ρe_tot) nonequilmoist allsky radiation monin_obukhov varying insolation high top 1-moment" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_aquaplanet_rhoe_nonequilmoist_allsky.yml --job_id sphere_aquaplanet_rhoe_nonequilmoist_allsky artifact_paths: "sphere_aquaplanet_rhoe_nonequilmoist_allsky/output_active/*" @@ -346,7 +346,7 @@ steps: - label: ":computer: aquaplanet (ρe_tot) slabocean equilmoist allsky radiation monin_obukhov varying insolation" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/aquaplanet_rhoe_equil_clearsky_tvinsol_0M_slabocean.yml --job_id aquaplanet_rhoe_equil_clearsky_tvinsol_0M_slabocean artifact_paths: "aquaplanet_rhoe_equil_clearsky_tvinsol_0M_slabocean/output_active/*" @@ -355,7 +355,7 @@ steps: - label: ":computer: aquaplanet (ρe_tot) slabocean equilmoist allsky radiation monin_obukhov varying insolation float64" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/aquaplanet_rhoe_equil_clearsky_tvinsol_0M_slabocean_ft64.yml --job_id aquaplanet_rhoe_equil_clearsky_tvinsol_0M_slabocean_ft64 artifact_paths: "aquaplanet_rhoe_equil_clearsky_tvinsol_0M_slabocean_ft64/output_active/*" @@ -364,7 +364,7 @@ steps: - label: ":computer: aquaplanet (ρe_tot) rcemipii with diagnostic edmf" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/rcemipii_sphere_diagnostic_edmfx.yml --job_id rcemipii_sphere_diagnostic_edmfx artifact_paths: "rcemipii_sphere_diagnostic_edmfx/output_active/*" @@ -376,21 +376,21 @@ steps: - label: ":computer: baroclinic wave (ρe) topography (dcmip)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_rhoe_topography_dcmip_rs.yml --job_id sphere_baroclinic_wave_rhoe_topography_dcmip_rs artifact_paths: "sphere_baroclinic_wave_rhoe_topography_dcmip_rs/output_active/*" - label: ":computer: held suarez (ρe) topography (dcmip)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_held_suarez_rhoe_topography_dcmip.yml --job_id sphere_held_suarez_rhoe_topography_dcmip artifact_paths: "sphere_held_suarez_rhoe_topography_dcmip/output_active/*" - label: ":computer: held suarez (ρe) equilmoist topography (dcmip)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_held_suarez_rhoe_equilmoist_topography_dcmip.yml --job_id sphere_held_suarez_rhoe_equilmoist_topography_dcmip artifact_paths: "sphere_held_suarez_rhoe_equilmoist_topography_dcmip/output_active/*" @@ -399,14 +399,14 @@ steps: - label: ":computer: Diagnostic DCMIP200 surface elevation spectra" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_ssp_baroclinic_wave_rhoe_equilmoist_dcmip200.yml --job_id sphere_ssp_baroclinic_wave_rhoe_equilmoist_dcmip200 artifact_paths: "sphere_ssp_baroclinic_wave_rhoe_equilmoist_dcmip200/output_active/*" - label: ":computer: Diagnostic Earth surface elevation spectra" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_ssp_baroclinic_wave_rhoe_equilmoist_earth.yml --job_id sphere_ssp_baroclinic_wave_rhoe_equilmoist_earth artifact_paths: "sphere_ssp_baroclinic_wave_rhoe_equilmoist_earth/output_active/*" @@ -455,7 +455,7 @@ steps: - label: ":computer: Prep restart for MPI" key: "mpi_baro_wave_make_restart" command: > - srun julia --color=yes --project=examples examples/hybrid/driver.jl + srun julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $MPI_CONFIG_PATH/mpi_make_restart.yml --job_id mpi_make_restart artifact_paths: "mpi_make_restart/output_active/*" @@ -471,7 +471,7 @@ steps: command: > tar xvf mpi_make_restart/output_active/hdf5_files.tar -C mpi_make_restart/output_active - srun julia --color=yes --project=examples examples/hybrid/driver.jl + srun julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $MPI_CONFIG_PATH/restart_mpi_baroclinic_wave_rhoe.yml --job_id restart_mpi_baroclinic_wave_rhoe artifact_paths: "restart_mpi_baroclinic_wave_rhoe/output_active/*" @@ -487,7 +487,7 @@ steps: - label: ":computer: MPI no lim aquaplanet (ρe) equilmoist clearsky radiation" command: > - srun julia --color=yes --project=examples examples/hybrid/driver.jl + srun julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $MPI_CONFIG_PATH/mpi_sphere_aquaplanet_rhoe_equilmoist_clearsky.yml --job_id mpi_sphere_aquaplanet_rhoe_equilmoist_clearsky artifact_paths: "mpi_sphere_aquaplanet_rhoe_equilmoist_clearsky/output_active/*" @@ -500,7 +500,7 @@ steps: - label: ":computer: Prep for calling remap pipeline" key: "prep_remap" command: > - srun julia --color=yes --project=examples examples/hybrid/driver.jl + srun julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $MPI_CONFIG_PATH/prep_remap.yml --job_id prep_remap artifact_paths: "prep_remap/output_active/*" @@ -545,7 +545,7 @@ steps: - label: ":genie: Diagnostic EDMFX test in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_test_box.yml --job_id diagnostic_edmfx_test_box artifact_paths: "diagnostic_edmfx_test_box/output_active/*" @@ -554,7 +554,7 @@ steps: - label: ":genie: Diagnostic EDMFX GABLS in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_gabls_box.yml --job_id diagnostic_edmfx_gabls_box artifact_paths: "diagnostic_edmfx_gabls_box/output_active/*" @@ -563,7 +563,7 @@ steps: - label: ":genie: Diagnostic EDMFX Bomex in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_bomex_box.yml --job_id diagnostic_edmfx_bomex_box artifact_paths: "diagnostic_edmfx_bomex_box/output_active/*" @@ -572,7 +572,7 @@ steps: - label: ":genie: Diagnostic EDMFX Bomex stretched grid in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_bomex_stretched_box.yml --job_id diagnostic_edmfx_bomex_stretched_box artifact_paths: "diagnostic_edmfx_bomex_stretched_box/output_active/*" @@ -581,7 +581,7 @@ steps: - label: ":genie: Diagnostic EDMFX DYCOMS_RF01 in a box (explicit)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_dycoms_rf01_explicit_box.yml --job_id diagnostic_edmfx_dycoms_rf01_explicit_box artifact_paths: "diagnostic_edmfx_dycoms_rf01_explicit_box/output_active/*" @@ -590,7 +590,7 @@ steps: - label: ":genie: Diagnostic EDMFX DYCOMS_RF01 in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_dycoms_rf01_box.yml --job_id diagnostic_edmfx_dycoms_rf01_box artifact_paths: "diagnostic_edmfx_dycoms_rf01_box/output_active/*" @@ -599,7 +599,7 @@ steps: - label: ":umbrella: Diagnostic EDMFX DYCOMS_RF02 in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_dycoms_rf02_box.yml --job_id diagnostic_edmfx_dycoms_rf02_box artifact_paths: "diagnostic_edmfx_dycoms_rf02_box/output_active/*" @@ -608,7 +608,7 @@ steps: - label: ":umbrella: Diagnostic EDMFX Rico in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_rico_box.yml --job_id diagnostic_edmfx_rico_box artifact_paths: "diagnostic_edmfx_rico_box/output_active/*" @@ -617,7 +617,7 @@ steps: - label: ":umbrella: Diagnostic EDMFX TRMM in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_trmm_box.yml --job_id diagnostic_edmfx_trmm_box artifact_paths: "diagnostic_edmfx_trmm_box/output_active/*" @@ -626,7 +626,7 @@ steps: - label: ":umbrella: Diagnostic EDMFX TRMM stretched grid in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_trmm_stretched_box.yml --job_id diagnostic_edmfx_trmm_stretched_box artifact_paths: "diagnostic_edmfx_trmm_stretched_box/output_active/*" @@ -635,7 +635,7 @@ steps: - label: ":genie: Diagnostic EDMFX TRMM 0M in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_trmm_box_0M.yml --job_id diagnostic_edmfx_trmm_box_0M artifact_paths: "diagnostic_edmfx_trmm_box_0M/output_active/*" @@ -644,7 +644,7 @@ steps: - label: ":genie: Diagnostic EDMFX aquaplanet with TKE" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_aquaplanet.yml --job_id diagnostic_edmfx_aquaplanet @@ -661,7 +661,7 @@ steps: - label: ":genie: Prognostic EDMFX advection test in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_adv_test_column.yml --job_id prognostic_edmfx_adv_test_column artifact_paths: "prognostic_edmfx_adv_test_column/output_active/*" @@ -671,7 +671,7 @@ steps: - label: ":genie: Prognostic EDMFX simple plume test in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_simpleplume_column.yml --job_id prognostic_edmfx_simpleplume_column artifact_paths: "prognostic_edmfx_simpleplume_column/output_active/*" @@ -680,7 +680,7 @@ steps: - label: ":genie: Prognostic EDMFX GABLS in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_gabls_column.yml --job_id prognostic_edmfx_gabls_column artifact_paths: "prognostic_edmfx_gabls_column/output_active/*" @@ -689,7 +689,7 @@ steps: - label: ":genie: Prognostic EDMFX Bomex in a column (pi group)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_bomex_pigroup_column.yml --job_id prognostic_edmfx_bomex_pigroup_column artifact_paths: "prognostic_edmfx_bomex_pigroup_column/output_active/*" @@ -698,7 +698,7 @@ steps: - label: ":genie: Prognostic EDMFX Bomex with precribed TKE in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_bomex_fixtke_column.yml --job_id prognostic_edmfx_bomex_fixtke_column artifact_paths: "prognostic_edmfx_bomex_fixtke_column/output_active/*" @@ -707,7 +707,7 @@ steps: - label: ":genie: Prognostic EDMFX Bomex stretched grid in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_bomex_stretched_column.yml --job_id prognostic_edmfx_bomex_stretched_column artifact_paths: "prognostic_edmfx_bomex_stretched_column/output_active/*" @@ -716,7 +716,7 @@ steps: - label: ":genie: Prognostic EDMFX Bomex in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_bomex_column.yml --job_id prognostic_edmfx_bomex_column artifact_paths: "prognostic_edmfx_bomex_column/output_active/*" @@ -725,7 +725,7 @@ steps: - label: ":genie: Prognostic EDMFX Bomex in a column (implicit)" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_bomex_implicit_column.yml --job_id prognostic_edmfx_bomex_column_implicit artifact_paths: "prognostic_edmfx_bomex_column_implicit/output_active/*" @@ -734,7 +734,7 @@ steps: - label: ":genie: Prognostic EDMFX Dycoms RF01 in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_dycoms_rf01_column.yml --job_id prognostic_edmfx_dycoms_rf01_column artifact_paths: "prognostic_edmfx_dycoms_rf01_column/output_active/*" @@ -743,7 +743,7 @@ steps: - label: ":umbrella: Prognostic EDMFX Rico in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_rico_column.yml --job_id prognostic_edmfx_rico_column artifact_paths: "prognostic_edmfx_rico_column/output_active/*" @@ -752,7 +752,7 @@ steps: - label: ":umbrella: Prognostic EDMFX TRMM in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_trmm_column.yml --job_id prognostic_edmfx_trmm_column artifact_paths: "prognostic_edmfx_trmm_column/output_active/*" @@ -761,7 +761,7 @@ steps: - label: ":genie: Prognostic EDMFX TRMM with 0-moment in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_trmm_column_0M.yml --job_id prognostic_edmfx_trmm_column_0M artifact_paths: "prognostic_edmfx_trmm_column_0M/output_active/*" @@ -770,7 +770,7 @@ steps: - label: ":genie: Prognostic EDMFX GCM driven in a column" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_gcmdriven_column.yml --job_id prognostic_edmfx_gcmdriven_column artifact_paths: "prognostic_edmfx_gcmdriven_column/output_active/*" @@ -780,7 +780,7 @@ steps: - label: ":genie: Prognostic EDMFX Bomex in a box" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_bomex_box.yml --job_id prognostic_edmfx_bomex_box artifact_paths: "prognostic_edmfx_bomex_box/*" @@ -789,7 +789,7 @@ steps: - label: ":genie: Prognostic EDMFX aquaplanet" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_aquaplanet.yml --job_id prognostic_edmfx_aquaplanet artifact_paths: "prognostic_edmfx_aquaplanet/output_active/*" @@ -801,7 +801,7 @@ steps: - label: "GPU:Gravity waves" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_nonorographic_gravity_wave.yml --job_id sphere_nonorographic_gravity_wave artifact_paths: "sphere_nonorographic_gravity_wave/*" @@ -814,7 +814,7 @@ steps: - label: "GPU: baroclinic wave" key: "sphere_baroclinic_wave_rhoe_gpu" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/sphere_baroclinic_wave_rhoe.yml --job_id sphere_baroclinic_wave_rhoe_gpu artifact_paths: "sphere_baroclinic_wave_rhoe_gpu/output_active/*" @@ -844,7 +844,7 @@ steps: - mkdir -p target_gpu_implicit_baroclinic_wave - > nsys profile --trace=nvtx,cuda --output=target_gpu_implicit_baroclinic_wave/output_active/report - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file ${GPU_CONFIG_PATH}/target_gpu_implicit_baroclinic_wave.yml --job_id target_gpu_implicit_baroclinic_wave artifact_paths: "target_gpu_implicit_baroclinic_wave/output_active/*" @@ -861,7 +861,7 @@ steps: - mkdir -p target_gpu_implicit_baroclinic_wave_4process - > srun --cpu-bind=threads --cpus-per-task=4 - julia --threads=3 --color=yes --project=examples examples/hybrid/driver.jl + julia --threads=3 --color=yes --project=perf examples/hybrid/driver.jl --config_file ${GPU_CONFIG_PATH}/target_gpu_implicit_baroclinic_wave.yml --job_id target_gpu_implicit_baroclinic_wave_4process artifact_paths: "target_gpu_implicit_baroclinic_wave_4process/output_active/*" @@ -878,7 +878,7 @@ steps: command: - > nsys profile --trace=nvtx,cuda --output=central_gpu_hs_rhoe_equil_55km_nz63_0M/output_active/report - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/central_gpu_hs_rhoe_equil_55km_nz63_0M.yml --job_id central_gpu_hs_rhoe_equil_55km_nz63_0M artifact_paths: "central_gpu_hs_rhoe_equil_55km_nz63_0M/output_active/*" @@ -892,7 +892,7 @@ steps: command: - > nsys profile --trace=nvtx,cuda --output=central_cloud_diag_gpu_hs_rhoe_equil_55km_nz63_0M/output_active/report - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/central_cloud_diag_gpu_hs_rhoe_equil_55km_nz63_0M.yml --job_id central_cloud_diag_gpu_hs_rhoe_equil_55km_nz63_0M artifact_paths: "central_cloud_diag_gpu_hs_rhoe_equil_55km_nz63_0M/output_active/*" @@ -907,7 +907,7 @@ steps: - mkdir -p gpu_aquaplanet_dyamond - > nsys profile --trace=nvtx,cuda --output=gpu_aquaplanet_dyamond/output_active/report - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file ${CONFIG_PATH}/gpu_aquaplanet_dyamond.yml --job_id gpu_aquaplanet_dyamond artifact_paths: "gpu_aquaplanet_dyamond/output_active/*" @@ -919,7 +919,7 @@ steps: - label: "GPU: Diagnostic EDMFX aquaplanet" key: "diagnostic_edmfx_aquaplanet_gpu" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/diagnostic_edmfx_aquaplanet_gpu.yml --job_id diagnostic_edmfx_aquaplanet_gpu artifact_paths: "diagnostic_edmfx_aquaplanet_gpu/output_active/*" @@ -931,7 +931,7 @@ steps: - label: "GPU: Prognostic EDMFX aquaplanet" command: > - julia --color=yes --project=examples examples/hybrid/driver.jl + julia --color=yes --project=perf examples/hybrid/driver.jl --config_file $CONFIG_PATH/prognostic_edmfx_aquaplanet.yml --job_id prognostic_edmfx_aquaplanet_gpu artifact_paths: "prognostic_edmfx_aquaplanet_gpu/output_active/*" diff --git a/docs/Manifest.toml b/docs/Manifest.toml index ae36a2c91a..d751f99ed8 100644 --- a/docs/Manifest.toml +++ b/docs/Manifest.toml @@ -5,9 +5,9 @@ manifest_format = "2.0" project_hash = "64afcb8dacf7a673d0068ba1a72602801e8d529a" [[deps.ADTypes]] -git-tree-sha1 = "99a6f5d0ce1c7c6afdb759daa30226f71c54f6b0" +git-tree-sha1 = "eea5d80188827b35333801ef97a40c2ed653b081" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "1.7.1" +version = "1.9.0" weakdeps = ["ChainRulesCore", "EnzymeCore"] [deps.ADTypes.extensions] @@ -286,9 +286,9 @@ version = "1.18.0+2" [[deps.ChainRulesCore]] deps = ["Compat", "LinearAlgebra"] -git-tree-sha1 = "71acdbf594aab5bbb2cec89b208c41b4c411e49f" +git-tree-sha1 = "3e4b134270b372f2ed4d4d0e936aabaefc1802bc" uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.24.0" +version = "1.25.0" weakdeps = ["SparseArrays"] [deps.ChainRulesCore.extensions] @@ -617,9 +617,9 @@ uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" [[deps.Distributions]] deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "e6c693a0e4394f8fda0e51a5bdf5aef26f8235e9" +git-tree-sha1 = "d7477ecdafb813ddee2ae727afa94e9dcb5f3fb0" uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.111" +version = "0.25.112" [deps.Distributions.extensions] DistributionsChainRulesCoreExt = "ChainRulesCore" @@ -645,9 +645,9 @@ version = "1.7.0" [[deps.DocumenterCitations]] deps = ["AbstractTrees", "Bibliography", "Dates", "Documenter", "Logging", "Markdown", "MarkdownAST", "OrderedCollections", "Unicode"] -git-tree-sha1 = "c72ee44a4242d8ad932062e7476880243635ce6d" +git-tree-sha1 = "ca601b812efd1155a9bdf9c80e7e0428da598a08" uuid = "daee34ce-89f3-4625-b898-19384cb65244" -version = "1.3.3" +version = "1.3.4" [[deps.Downloads]] deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] @@ -721,9 +721,9 @@ version = "1.8.0" [[deps.FFTW_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "c6033cc3892d0ef5bb9cd29b7f2f0331ea5184ea" +git-tree-sha1 = "4d81ed14783ec49ce9f2e168208a12ce1815aa25" uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" -version = "3.3.10+0" +version = "3.3.10+1" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] @@ -876,9 +876,9 @@ version = "0.4.2" [[deps.GeoInterface]] deps = ["Extents", "GeoFormatTypes"] -git-tree-sha1 = "5921fc0704e40c024571eca551800c699f86ceb4" +git-tree-sha1 = "2f6fce56cdb8373637a6614e14a5768a88450de2" uuid = "cf35fbd7-0cd7-5166-be24-54bfbe79505f" -version = "1.3.6" +version = "1.3.7" [[deps.GeometryBasics]] deps = ["EarCut_jll", "Extents", "GeoInterface", "IterTools", "LinearAlgebra", "StaticArrays", "StructArrays", "Tables"] @@ -905,9 +905,9 @@ version = "1.3.1" [[deps.Git_jll]] deps = ["Artifacts", "Expat_jll", "JLLWrappers", "LibCURL_jll", "Libdl", "Libiconv_jll", "OpenSSL_jll", "PCRE2_jll", "Zlib_jll"] -git-tree-sha1 = "d18fb8a1f3609361ebda9bf029b60fd0f120c809" +git-tree-sha1 = "ea372033d09e4552a04fd38361cd019f9003f4f4" uuid = "f8c6e375-362e-5223-8a59-34ff63f689eb" -version = "2.44.0+2" +version = "2.46.2+0" [[deps.Glib_jll]] deps = ["Artifacts", "Gettext_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Libiconv_jll", "Libmount_jll", "PCRE2_jll", "Zlib_jll"] @@ -976,9 +976,9 @@ version = "8.3.1+0" [[deps.Hwloc_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "5e19e1e4fa3e71b774ce746274364aef0234634e" +git-tree-sha1 = "378267a829b1e17423d32ce6d905f37a12c1fd84" uuid = "e33a78d0-f292-5ffc-b300-72abe9b543c8" -version = "2.11.1+0" +version = "2.11.1+1" [[deps.HypergeometricFunctions]] deps = ["LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] @@ -1091,9 +1091,9 @@ weakdeps = ["Random", "RecipesBase", "Statistics"] IntervalSetsStatisticsExt = "Statistics" [[deps.InverseFunctions]] -git-tree-sha1 = "2787db24f4e03daf859c6509ff87764e4182f7d1" +git-tree-sha1 = "a779299d77cd080bf77b97535acecd73e1c5e5cb" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.16" +version = "0.1.17" weakdeps = ["Dates", "Test"] [deps.InverseFunctions.extensions] @@ -1159,9 +1159,9 @@ version = "0.1.5" [[deps.JpegTurbo_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "c84a835e1a09b289ffcd2271bf2a337bbdda6637" +git-tree-sha1 = "25ee0be4d43d0269027024d75a24c24d6c6e590c" uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" -version = "3.0.3+0" +version = "3.0.4+0" [[deps.JuliaNVTXCallbacks_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -1171,9 +1171,9 @@ version = "0.2.1+0" [[deps.KernelAbstractions]] deps = ["Adapt", "Atomix", "InteractiveUtils", "MacroTools", "PrecompileTools", "Requires", "StaticArrays", "UUIDs", "UnsafeAtomics", "UnsafeAtomicsLLVM"] -git-tree-sha1 = "cb1cff88ef2f3a157cbad75bbe6b229e1975e498" +git-tree-sha1 = "045d41a364a81e357757c566b5a69fd4a2a2c445" uuid = "63c18a36-062a-441e-b654-da1e3ab1ce7c" -version = "0.9.25" +version = "0.9.26" weakdeps = ["EnzymeCore", "LinearAlgebra", "SparseArrays"] [deps.KernelAbstractions.extensions] @@ -1244,9 +1244,9 @@ weakdeps = ["Serialization"] [[deps.LZO_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "70c5da094887fd2cae843b8db33920bac4b6f07d" +git-tree-sha1 = "854a9c268c43b77b0a27f22d7fab8d33cdb3a731" uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" -version = "2.10.2+0" +version = "2.10.2+1" [[deps.LaTeXStrings]] git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" @@ -1377,9 +1377,9 @@ uuid = "56ddb016-857b-54e1-b83d-db4d58db5568" [[deps.Lz4_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "7f26c8fc5229e68484e0b3447312c98e16207d11" +git-tree-sha1 = "abf88ff67f4fd89839efcae2f4c39cbc4ecd0846" uuid = "5ced341a-0733-55b8-9ab6-a4889d929147" -version = "1.10.0+0" +version = "1.10.0+1" [[deps.MKL_jll]] deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] @@ -1406,9 +1406,9 @@ version = "0.1.11" [[deps.MPItrampoline_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "8c35d5420193841b2f367e658540e8d9e0601ed0" +git-tree-sha1 = "fde81c9f9c94fe5fbeaed7b3f1330305cf9a327c" uuid = "f1f71cc9-e9ae-5b93-9b94-4fe0e1ad3748" -version = "5.4.0+0" +version = "5.5.0+0" [[deps.MacroTools]] deps = ["Markdown", "Random"] @@ -1597,9 +1597,9 @@ version = "4.1.6+0" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1b35263570443fdd9e76c76b7062116e2f374ab8" +git-tree-sha1 = "7493f61f55a6cce7325f197443aa80d32554ba10" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.15+0" +version = "3.0.15+1" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] @@ -1743,9 +1743,9 @@ version = "1.4.3" [[deps.PrettyTables]] deps = ["Crayons", "LaTeXStrings", "Markdown", "PrecompileTools", "Printf", "Reexport", "StringManipulation", "Tables"] -git-tree-sha1 = "66b20dd35966a748321d3b2537c4584cf40387c7" +git-tree-sha1 = "1101cd475833706e4d0e7b122218257178f48f34" uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "2.3.2" +version = "2.4.0" [[deps.Printf]] deps = ["Unicode"] @@ -1770,9 +1770,9 @@ version = "1.0.0" [[deps.QuadGK]] deps = ["DataStructures", "LinearAlgebra"] -git-tree-sha1 = "1d587203cf851a51bf1ea31ad7ff89eff8d625ea" +git-tree-sha1 = "cda3b045cf9ef07a08ad46731f5a3165e56cf3da" uuid = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" -version = "2.11.0" +version = "2.11.1" [deps.QuadGK.extensions] QuadGKEnzymeExt = "Enzyme" @@ -1907,9 +1907,9 @@ version = "0.7.0" [[deps.SIMD]] deps = ["PrecompileTools"] -git-tree-sha1 = "2803cab51702db743f3fda07dd1745aadfbf43bd" +git-tree-sha1 = "98ca7c29edd6fc79cd74c61accb7010a4e7aee33" uuid = "fdea26ae-647d-5447-a871-4b548cad5224" -version = "3.5.0" +version = "3.6.0" [[deps.SIMDTypes]] git-tree-sha1 = "330289636fb8107c5f32088d2741e9fd7a061a5c" @@ -1918,9 +1918,9 @@ version = "0.1.0" [[deps.SciMLBase]] deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "Expronicon", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "c96f81c3e98d5e2f0848fb42aba4383d772c3bb7" +git-tree-sha1 = "71857d6bab17e7ac6802d86ffcc75423b8c1d812" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.53.1" +version = "2.54.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -2117,9 +2117,9 @@ version = "0.3.7" [[deps.StringManipulation]] deps = ["PrecompileTools"] -git-tree-sha1 = "a04cabe79c5f01f4d723cc6704070ada0b9d46d5" +git-tree-sha1 = "a6b1675a536c5ad1a60e5a5153e1fee12eb146e3" uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" -version = "0.3.4" +version = "0.4.0" [[deps.StructArrays]] deps = ["ConstructionBase", "DataAPI", "Tables"] @@ -2151,9 +2151,9 @@ version = "7.2.1+1" [[deps.SurfaceFluxes]] deps = ["DocStringExtensions", "RootSolvers", "Thermodynamics"] -git-tree-sha1 = "89c701c87f378ce95e7ddbcd69b8f1106ba8b968" +git-tree-sha1 = "aee530bde85cd41374273568cb649e72d82921e7" uuid = "49b00bb7-8bd4-4f2b-b78c-51cd0450215f" -version = "0.11.0" +version = "0.12.0" weakdeps = ["ClimaParams"] [deps.SurfaceFluxes.extensions] @@ -2161,9 +2161,9 @@ weakdeps = ["ClimaParams"] [[deps.SymbolicIndexingInterface]] deps = ["Accessors", "ArrayInterface", "RuntimeGeneratedFunctions", "StaticArraysCore"] -git-tree-sha1 = "988e04b34a4c3b824fb656f542473df99a4f610d" +git-tree-sha1 = "0225f7c62f5f78db35aae6abb2e5cabe38ce578f" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.30" +version = "0.3.31" [[deps.TOML]] deps = ["Dates"] @@ -2420,9 +2420,9 @@ version = "1.2.13+1" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e678132f07ddb5bfa46857f0d7620fb9be675d3b" +git-tree-sha1 = "555d1076590a6cc2fdee2ef1469451f872d8b41b" uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" -version = "1.5.6+0" +version = "1.5.6+1" [[deps.isoband_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] diff --git a/docs/Project.toml b/docs/Project.toml index 18be2b70fd..11a7d1e933 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -4,6 +4,7 @@ CairoMakie = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0" ClimaAtmos = "b2c96348-7fb7-4fe0-8da9-78d88439e717" ClimaDiagnostics = "1ecacbb8-0713-4841-9a07-eb5aa8a2d53f" ClimaParams = "5c42b081-d73a-476f-9059-fd94b934656c" +ClimaTimeSteppers = "595c0a79-7f3d-439a-bc5a-b232dc3bde79" DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e" Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4" DocumenterCitations = "daee34ce-89f3-4625-b898-19384cb65244" diff --git a/examples/Manifest.toml b/examples/Manifest.toml index 328727145e..b4af201bf0 100644 --- a/examples/Manifest.toml +++ b/examples/Manifest.toml @@ -5,9 +5,9 @@ manifest_format = "2.0" project_hash = "f170b98e0622d3f170fe6045d8258f49ebd31345" [[deps.ADTypes]] -git-tree-sha1 = "5a5eafb8344b81b8c2237f8a6f6b3602b3f6180e" +git-tree-sha1 = "eea5d80188827b35333801ef97a40c2ed653b081" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "1.8.1" +version = "1.9.0" weakdeps = ["ChainRulesCore", "EnzymeCore"] [deps.ADTypes.extensions] @@ -347,9 +347,9 @@ weakdeps = ["CUDA", "Krylov"] [[deps.ClimaCoreMakie]] deps = ["ClimaCore", "Makie"] -git-tree-sha1 = "cb488562b6d43758daab4e411dfdcfdc403e7f8a" +git-tree-sha1 = "e1e82d32ba993a18fc760d5cbd7db3bcabd1f3c8" uuid = "908f55d8-4145-4867-9c14-5dad1a479e4d" -version = "0.4.5" +version = "0.4.6" [[deps.ClimaCorePlots]] deps = ["ClimaCore", "RecipesBase", "StaticArrays", "TriplotBase"] @@ -574,10 +574,10 @@ uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" version = "1.16.0" [[deps.DataFrames]] -deps = ["Compat", "DataAPI", "DataStructures", "Future", "InlineStrings", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrecompileTools", "PrettyTables", "Printf", "REPL", "Random", "Reexport", "SentinelArrays", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] -git-tree-sha1 = "04c738083f29f86e62c8afc341f0967d8717bdb8" +deps = ["Compat", "DataAPI", "DataStructures", "Future", "InlineStrings", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrecompileTools", "PrettyTables", "Printf", "Random", "Reexport", "SentinelArrays", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] +git-tree-sha1 = "fb61b4812c49343d7ef0b533ba982c46021938a6" uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -version = "1.6.1" +version = "1.7.0" [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] @@ -662,9 +662,9 @@ uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" [[deps.Distributions]] deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "e6c693a0e4394f8fda0e51a5bdf5aef26f8235e9" +git-tree-sha1 = "d7477ecdafb813ddee2ae727afa94e9dcb5f3fb0" uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.111" +version = "0.25.112" [deps.Distributions.extensions] DistributionsChainRulesCoreExt = "ChainRulesCore" @@ -754,9 +754,9 @@ version = "1.8.0" [[deps.FFTW_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "c6033cc3892d0ef5bb9cd29b7f2f0331ea5184ea" +git-tree-sha1 = "4d81ed14783ec49ce9f2e168208a12ce1815aa25" uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" -version = "3.3.10+0" +version = "3.3.10+1" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] @@ -904,9 +904,9 @@ version = "0.1.6" [[deps.GPUCompiler]] deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "PrecompileTools", "Preferences", "Scratch", "Serialization", "TOML", "TimerOutputs", "UUIDs"] -git-tree-sha1 = "fd8e483d0921ab300fd7c5a144f08332a8fbb745" +git-tree-sha1 = "1d6f290a5eb1201cd63574fbc4440c788d5cb38f" uuid = "61eb1bfa-7361-4325-ad38-22787b887f55" -version = "0.27.7" +version = "0.27.8" [[deps.GaussQuadrature]] deps = ["SpecialFunctions"] @@ -921,9 +921,9 @@ version = "0.4.2" [[deps.GeoInterface]] deps = ["Extents", "GeoFormatTypes"] -git-tree-sha1 = "5921fc0704e40c024571eca551800c699f86ceb4" +git-tree-sha1 = "2f6fce56cdb8373637a6614e14a5768a88450de2" uuid = "cf35fbd7-0cd7-5166-be24-54bfbe79505f" -version = "1.3.6" +version = "1.3.7" [[deps.GeometryBasics]] deps = ["EarCut_jll", "Extents", "GeoInterface", "IterTools", "LinearAlgebra", "StaticArrays", "StructArrays", "Tables"] @@ -999,10 +999,10 @@ weakdeps = ["MPI"] MPIExt = "MPI" [[deps.HDF5_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "OpenSSL_jll", "TOML", "Zlib_jll", "libaec_jll"] -git-tree-sha1 = "82a471768b513dc39e471540fdadc84ff80ff997" +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "OpenSSL_jll", "TOML", "Zlib_jll", "libaec_jll"] +git-tree-sha1 = "38c8874692d48d5440d5752d6c74b0c6b0b60739" uuid = "0234f1f7-429e-5d53-9886-15a909be8d59" -version = "1.14.3+3" +version = "1.14.2+1" [[deps.HarfBuzz_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll"] @@ -1012,9 +1012,9 @@ version = "8.3.1+0" [[deps.Hwloc_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "5e19e1e4fa3e71b774ce746274364aef0234634e" +git-tree-sha1 = "378267a829b1e17423d32ce6d905f37a12c1fd84" uuid = "e33a78d0-f292-5ffc-b300-72abe9b543c8" -version = "2.11.1+0" +version = "2.11.1+1" [[deps.HypergeometricFunctions]] deps = ["LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] @@ -1136,9 +1136,9 @@ weakdeps = ["Random", "RecipesBase", "Statistics"] IntervalSetsStatisticsExt = "Statistics" [[deps.InverseFunctions]] -git-tree-sha1 = "2787db24f4e03daf859c6509ff87764e4182f7d1" +git-tree-sha1 = "a779299d77cd080bf77b97535acecd73e1c5e5cb" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.16" +version = "0.1.17" weakdeps = ["Dates", "Test"] [deps.InverseFunctions.extensions] @@ -1187,9 +1187,9 @@ version = "0.9.9" [[deps.JLD2]] deps = ["FileIO", "MacroTools", "Mmap", "OrderedCollections", "PrecompileTools", "Requires", "TranscodingStreams"] -git-tree-sha1 = "cafcd62f46d534f20361b30f8ab7eb1ae2473700" +git-tree-sha1 = "9b8b3233d4a611a68f6cbcba96049c8d6fd3de73" uuid = "033835bb-8acc-5ee8-8aae-3f567f8a3819" -version = "0.5.2" +version = "0.5.4" [[deps.JLLWrappers]] deps = ["Artifacts", "Preferences"] @@ -1211,9 +1211,9 @@ version = "0.1.5" [[deps.JpegTurbo_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "c84a835e1a09b289ffcd2271bf2a337bbdda6637" +git-tree-sha1 = "25ee0be4d43d0269027024d75a24c24d6c6e590c" uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" -version = "3.0.3+0" +version = "3.0.4+0" [[deps.JuliaInterpreter]] deps = ["CodeTracking", "InteractiveUtils", "Random", "UUIDs"] @@ -1311,9 +1311,9 @@ weakdeps = ["Serialization"] [[deps.LZO_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "70c5da094887fd2cae843b8db33920bac4b6f07d" +git-tree-sha1 = "854a9c268c43b77b0a27f22d7fab8d33cdb3a731" uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" -version = "2.10.2+0" +version = "2.10.2+1" [[deps.LaTeXStrings]] git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" @@ -1463,9 +1463,9 @@ version = "3.0.2" [[deps.Lz4_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "7f26c8fc5229e68484e0b3447312c98e16207d11" +git-tree-sha1 = "abf88ff67f4fd89839efcae2f4c39cbc4ecd0846" uuid = "5ced341a-0733-55b8-9ab6-a4889d929147" -version = "1.10.0+0" +version = "1.10.0+1" [[deps.MKL_jll]] deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] @@ -1480,9 +1480,9 @@ version = "0.4.17" [[deps.MPI]] deps = ["Distributed", "DocStringExtensions", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "PkgVersion", "PrecompileTools", "Requires", "Serialization", "Sockets"] -git-tree-sha1 = "5465632f9dd11aea0d912cb64a6f80640092a33e" +git-tree-sha1 = "892676019c58f34e38743bc989b0eca5bce5edc5" uuid = "da04e1cc-30fd-572f-bb4f-1f8673147195" -version = "0.20.21" +version = "0.20.22" [deps.MPI.extensions] AMDGPUExt = "AMDGPU" @@ -1506,9 +1506,9 @@ version = "0.1.11" [[deps.MPItrampoline_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "8c35d5420193841b2f367e658540e8d9e0601ed0" +git-tree-sha1 = "fde81c9f9c94fe5fbeaed7b3f1330305cf9a327c" uuid = "f1f71cc9-e9ae-5b93-9b94-4fe0e1ad3748" -version = "5.4.0+0" +version = "5.5.0+0" [[deps.MacroTools]] deps = ["Markdown", "Random"] @@ -1629,10 +1629,10 @@ uuid = "b946abbf-3ea7-4610-9019-9858bfdeaf2d" version = "0.6.41" [[deps.NetCDF_jll]] -deps = ["Artifacts", "Blosc_jll", "Bzip2_jll", "HDF5_jll", "JLLWrappers", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "TOML", "XML2_jll", "Zlib_jll", "Zstd_jll", "libzip_jll"] -git-tree-sha1 = "4686378c4ae1d1948cfbe46c002a11a4265dcb07" +deps = ["Artifacts", "Blosc_jll", "Bzip2_jll", "HDF5_jll", "JLLWrappers", "LibCURL_jll", "Libdl", "OpenMPI_jll", "XML2_jll", "Zlib_jll", "Zstd_jll", "libzip_jll"] +git-tree-sha1 = "a8af1798e4eb9ff768ce7fdefc0e957097793f15" uuid = "7243133f-43d8-5620-bbf4-c2c921802cf3" -version = "400.902.211+1" +version = "400.902.209+0" [[deps.Netpbm]] deps = ["FileIO", "ImageCore", "ImageMetadata"] @@ -1705,16 +1705,16 @@ uuid = "05823500-19ac-5b8b-9628-191a04bc5112" version = "0.8.1+2" [[deps.OpenMPI_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "e25c1778a98e34219a00455d6e4384e017ea9762" +deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML", "Zlib_jll"] +git-tree-sha1 = "bfce6d523861a6c562721b262c0d1aaeead2647f" uuid = "fe0851c0-eecd-5654-98d4-656369965a5c" -version = "4.1.6+0" +version = "5.0.5+0" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1b35263570443fdd9e76c76b7062116e2f374ab8" +git-tree-sha1 = "7493f61f55a6cce7325f197443aa80d32554ba10" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.15+0" +version = "3.0.15+1" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] @@ -1876,9 +1876,9 @@ version = "1.4.3" [[deps.PrettyTables]] deps = ["Crayons", "LaTeXStrings", "Markdown", "PrecompileTools", "Printf", "Reexport", "StringManipulation", "Tables"] -git-tree-sha1 = "66b20dd35966a748321d3b2537c4584cf40387c7" +git-tree-sha1 = "1101cd475833706e4d0e7b122218257178f48f34" uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "2.3.2" +version = "2.4.0" [[deps.Printf]] deps = ["Unicode"] @@ -2064,9 +2064,9 @@ version = "0.1.0" [[deps.SciMLBase]] deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "Expronicon", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "c96f81c3e98d5e2f0848fb42aba4383d772c3bb7" +git-tree-sha1 = "71857d6bab17e7ac6802d86ffcc75423b8c1d812" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.53.1" +version = "2.54.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -2269,9 +2269,9 @@ version = "0.3.7" [[deps.StringManipulation]] deps = ["PrecompileTools"] -git-tree-sha1 = "a04cabe79c5f01f4d723cc6704070ada0b9d46d5" +git-tree-sha1 = "a6b1675a536c5ad1a60e5a5153e1fee12eb146e3" uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" -version = "0.3.4" +version = "0.4.0" [[deps.StructArrays]] deps = ["ConstructionBase", "DataAPI", "Tables"] @@ -2297,9 +2297,9 @@ version = "7.2.1+1" [[deps.SurfaceFluxes]] deps = ["DocStringExtensions", "RootSolvers", "Thermodynamics"] -git-tree-sha1 = "89c701c87f378ce95e7ddbcd69b8f1106ba8b968" +git-tree-sha1 = "aee530bde85cd41374273568cb649e72d82921e7" uuid = "49b00bb7-8bd4-4f2b-b78c-51cd0450215f" -version = "0.11.0" +version = "0.12.0" weakdeps = ["ClimaParams"] [deps.SurfaceFluxes.extensions] @@ -2307,9 +2307,9 @@ weakdeps = ["ClimaParams"] [[deps.SymbolicIndexingInterface]] deps = ["Accessors", "ArrayInterface", "RuntimeGeneratedFunctions", "StaticArraysCore"] -git-tree-sha1 = "988e04b34a4c3b824fb656f542473df99a4f610d" +git-tree-sha1 = "0225f7c62f5f78db35aae6abb2e5cabe38ce578f" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.30" +version = "0.3.31" [[deps.TOML]] deps = ["Dates"] @@ -2560,9 +2560,9 @@ version = "1.2.13+1" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e678132f07ddb5bfa46857f0d7620fb9be675d3b" +git-tree-sha1 = "555d1076590a6cc2fdee2ef1469451f872d8b41b" uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" -version = "1.5.6+0" +version = "1.5.6+1" [[deps.isoband_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] diff --git a/examples/Project.toml b/examples/Project.toml index 9c3319ba41..b27d368540 100644 --- a/examples/Project.toml +++ b/examples/Project.toml @@ -26,7 +26,9 @@ DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e" DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" FastGaussQuadrature = "442a2c76-b920-505d-bb47-c5924d526838" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" +GPUCompiler = "61eb1bfa-7361-4325-ad38-22787b887f55" Glob = "c27321d9-0574-5035-807b-f59d2c89b15c" +HDF5 = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f" Insolation = "e98cc03f-d57e-4e3c-b70c-8d51efe9e0d8" Interpolations = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59" IntervalSets = "8197267c-284f-5f27-9208-e0e47529a953" @@ -34,6 +36,7 @@ JET = "c3a54625-cd67-489e-a8e7-0a5a0ff4e31b" JLD2 = "033835bb-8acc-5ee8-8aae-3f567f8a3819" JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" Krylov = "ba0b0d4f-ebba-5204-a429-3ac8c609bfb7" +LLVM = "929cbde3-209d-540e-8aea-75f648917ca0" LazyArtifacts = "4af54fe1-eca0-43a8-85a7-787d91b784e3" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" Logging = "56ddb016-857b-54e1-b83d-db4d58db5568" diff --git a/examples/hybrid/driver.jl b/examples/hybrid/driver.jl index e1b05aa254..16271a8b82 100644 --- a/examples/hybrid/driver.jl +++ b/examples/hybrid/driver.jl @@ -8,6 +8,12 @@ import ClimaComms ClimaComms.@import_required_backends import ClimaAtmos as CA import Random + +# This runtime dispatch is only due to the +# possibility of printing error messages +import Thermodynamics as TD +TD.print_warning() = false + Random.seed!(1234) if !(@isdefined config) @@ -16,199 +22,6 @@ if !(@isdefined config) end simulation = CA.get_simulation(config) (; integrator) = simulation -sol_res = CA.solve_atmos!(simulation) - -(; atmos, params) = integrator.p -(; p) = integrator - -import ClimaCore -import ClimaCore: Topologies, Quadratures, Spaces -import ClimaAtmos.InitialConditions as ICs -using Statistics: mean -import ClimaAtmos.Parameters as CAP -import Thermodynamics as TD -import ClimaComms -using SciMLBase -using PrettyTables -using JLD2 -using NCDatasets -using ClimaTimeSteppers -import JSON -using Test -import Tar -import Base.Filesystem: rm -import OrderedCollections -include(joinpath(pkgdir(CA), "post_processing", "ci_plots.jl")) - -ref_job_id = config.parsed_args["reference_job_id"] -reference_job_id = isnothing(ref_job_id) ? simulation.job_id : ref_job_id - -if sol_res.ret_code == :simulation_crashed - error( - "The ClimaAtmos simulation has crashed. See the stack trace for details.", - ) -end -# Simulation did not crash -(; sol, walltime) = sol_res - -# we gracefully exited, so we won't have reached t_end -if !isempty(integrator.tstops) - @assert last(sol.t) == simulation.t_end -end -CA.verify_callbacks(sol.t) - -# Scaling check -if CA.is_distributed(config.comms_ctx) - nprocs = ClimaComms.nprocs(config.comms_ctx) - comms_ctx = config.comms_ctx - output_dir = simulation.output_dir - # replace sol.u on the root processor with the global sol.u - if ClimaComms.iamroot(comms_ctx) - Y = sol.u[1] - center_space = axes(Y.c) - horz_space = Spaces.horizontal_space(center_space) - horz_topology = Spaces.topology(horz_space) - quadrature_style = Spaces.quadrature_style(horz_space) - Nq = Quadratures.degrees_of_freedom(quadrature_style) - nlocalelems = Topologies.nlocalelems(horz_topology) - ncols_per_process = nlocalelems * Nq * Nq - scaling_file = - joinpath(output_dir, "scaling_data_$(nprocs)_processes.jld2") - @info( - "Writing scaling data", - "walltime (seconds)" = walltime, - scaling_file - ) - JLD2.jldsave(scaling_file; nprocs, ncols_per_process, walltime) - end -end - -# Check if selected output has changed from the previous recorded output (bit-wise comparison) -include( - joinpath(@__DIR__, "..", "..", "reproducibility_tests", "mse_tables.jl"), -) -if config.parsed_args["reproducibility_test"] - # Test results against main branch - include( - joinpath( - @__DIR__, - "..", - "..", - "reproducibility_tests", - "reproducibility_tests.jl", - ), - ) - @testset "Test reproducibility table entries" begin - mse_keys = sort(collect(keys(all_best_mse[simulation.job_id]))) - pcs = collect(Fields.property_chains(sol.u[end])) - for prop_chain in mse_keys - @test prop_chain in pcs - end - end - perform_reproducibility_tests( - simulation.job_id, - sol.u[end], - all_best_mse, - simulation.output_dir, - ) -end - -@info "Callback verification, n_expected_calls: $(CA.n_expected_calls(integrator))" -@info "Callback verification, n_measured_calls: $(CA.n_measured_calls(integrator))" - -# Conservation checks -if config.parsed_args["check_conservation"] - FT = Spaces.undertype(axes(sol.u[end].c.ρ)) - @info "Checking conservation" - (; energy_conservation, mass_conservation, water_conservation) = - CA.check_conservation(sol) - - @info " Net energy change / total energy: $energy_conservation" - @info " Net mass change / total mass: $mass_conservation" - @info " Net water change / total water: $water_conservation" - - sfc = p.atmos.surface_model - - if CA.has_no_source_or_sink(config.parsed_args) - @test energy_conservation ≈ 0 atol = 50 * eps(FT) - @test mass_conservation ≈ 0 atol = 50 * eps(FT) - @test water_conservation ≈ 0 atol = 50 * eps(FT) - else - @test energy_conservation ≈ 0 atol = sqrt(eps(FT)) - @test mass_conservation ≈ 0 atol = sqrt(eps(FT)) - if sfc isa CA.PrognosticSurfaceTemperature - @test water_conservation ≈ 0 atol = sqrt(eps(FT)) - end - end -end - -# Visualize the solution -if ClimaComms.iamroot(config.comms_ctx) - include( - joinpath( - pkgdir(CA), - "reproducibility_tests", - "self_reference_or_path.jl", - ), - ) - @info "Plotting" - path = self_reference_or_path() # __build__ path (not job path) - if path == :self_reference - make_plots(Val(Symbol(reference_job_id)), simulation.output_dir) - else - main_job_path = joinpath(path, reference_job_id) - nc_dir = joinpath(main_job_path, "nc_files") - if ispath(nc_dir) - @info "nc_dir exists" - else - mkpath(nc_dir) - # Try to extract nc files from tarball: - @info "Comparing against $(readdir(nc_dir))" - end - if isempty(readdir(nc_dir)) - if isfile(joinpath(main_job_path, "nc_files.tar")) - Tar.extract(joinpath(main_job_path, "nc_files.tar"), nc_dir) - else - @warn "No nc_files found" - end - else - @info "Files already extracted" - end - - paths = if isempty(readdir(nc_dir)) - simulation.output_dir - else - [simulation.output_dir, nc_dir] - end - make_plots(Val(Symbol(reference_job_id)), paths) - end - @info "Plotting done" - - if islink(simulation.output_dir) - symlink_to_fullpath(path) = joinpath(dirname(path), readlink(path)) - else - symlink_to_fullpath(path) = path - end - - @info "Creating tarballs" - # These NC files are used by our reproducibility tests, - # and need to be found later when comparing against the - # main branch. If "nc_files.tar" is renamed, then please - # search for "nc_files.tar" globally and rename it in the - # reproducibility test folder. - Tar.create( - f -> endswith(f, ".nc"), - symlink_to_fullpath(simulation.output_dir), - joinpath(simulation.output_dir, "nc_files.tar"), - ) - Tar.create( - f -> endswith(f, r"hdf5|h5"), - symlink_to_fullpath(simulation.output_dir), - joinpath(simulation.output_dir, "hdf5_files.tar"), - ) - - foreach(readdir(simulation.output_dir)) do f - endswith(f, r"nc|hdf5|h5") && rm(joinpath(simulation.output_dir, f)) - end - @info "Tarballs created" -end +import SciMLBase +SciMLBase.step!(integrator) # compile +include(joinpath(@__DIR__, "..", "..", "perf", "jet_report_nfailures.jl")) diff --git a/perf/Manifest.toml b/perf/Manifest.toml index fd68d7df5d..065b800ef0 100644 --- a/perf/Manifest.toml +++ b/perf/Manifest.toml @@ -2,12 +2,12 @@ julia_version = "1.10.5" manifest_format = "2.0" -project_hash = "1b8f2c1a4c1bc4fd937f4c1ec969061b8acdbb19" +project_hash = "272bb08db2c73d97c696b32fb14bbb6524adcc66" [[deps.ADTypes]] -git-tree-sha1 = "99a6f5d0ce1c7c6afdb759daa30226f71c54f6b0" +git-tree-sha1 = "eea5d80188827b35333801ef97a40c2ed653b081" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "1.7.1" +version = "1.9.0" weakdeps = ["ChainRulesCore", "EnzymeCore"] [deps.ADTypes.extensions] @@ -259,9 +259,9 @@ version = "1.0.1+0" [[deps.CUDA]] deps = ["AbstractFFTs", "Adapt", "BFloat16s", "CEnum", "CUDA_Driver_jll", "CUDA_Runtime_Discovery", "CUDA_Runtime_jll", "Crayons", "DataFrames", "ExprTools", "GPUArrays", "GPUCompiler", "KernelAbstractions", "LLVM", "LLVMLoopInfo", "LazyArtifacts", "Libdl", "LinearAlgebra", "Logging", "NVTX", "Preferences", "PrettyTables", "Printf", "Random", "Random123", "RandomNumbers", "Reexport", "Requires", "SparseArrays", "StaticArrays", "Statistics"] -git-tree-sha1 = "fdd9dfb67dfefd548f51000cc400bb51003de247" +git-tree-sha1 = "cdbdca28f19c2c7fcf34ffb48bfdaca404dcd18a" uuid = "052768ef-5323-5732-b1bb-66c8b64840ba" -version = "5.4.3" +version = "5.5.0" weakdeps = ["ChainRulesCore", "EnzymeCore", "SpecialFunctions"] [deps.CUDA.extensions] @@ -271,9 +271,9 @@ weakdeps = ["ChainRulesCore", "EnzymeCore", "SpecialFunctions"] [[deps.CUDA_Driver_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "325058b426c2b421e3d2df3d5fa646d72d2e3e7e" +git-tree-sha1 = "e2d9695d60b647e8803f1b5771412a7bf980e971" uuid = "4ee394cb-3365-5eb0-8335-949819d2adfc" -version = "0.9.2+0" +version = "0.10.2+0" [[deps.CUDA_Runtime_Discovery]] deps = ["Libdl"] @@ -283,9 +283,9 @@ version = "0.3.5" [[deps.CUDA_Runtime_jll]] deps = ["Artifacts", "CUDA_Driver_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "afea94249b821dc754a8ca6695d3daed851e1f5a" +git-tree-sha1 = "1dce783060fb871658a6a4852c853293126eef8c" uuid = "76a88914-d11a-5bdc-97e0-2f5a05c973a2" -version = "0.14.1+0" +version = "0.15.2+0" [[deps.Cairo]] deps = ["Cairo_jll", "Colors", "Glib_jll", "Graphics", "Libdl", "Pango_jll"] @@ -307,9 +307,9 @@ version = "1.18.0+2" [[deps.ChainRulesCore]] deps = ["Compat", "LinearAlgebra"] -git-tree-sha1 = "71acdbf594aab5bbb2cec89b208c41b4c411e49f" +git-tree-sha1 = "3e4b134270b372f2ed4d4d0e936aabaefc1802bc" uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.24.0" +version = "1.25.0" weakdeps = ["SparseArrays"] [deps.ChainRulesCore.extensions] @@ -358,9 +358,9 @@ weakdeps = ["CUDA", "Krylov"] [[deps.ClimaCoreMakie]] deps = ["ClimaCore", "Makie"] -git-tree-sha1 = "cb488562b6d43758daab4e411dfdcfdc403e7f8a" +git-tree-sha1 = "e1e82d32ba993a18fc760d5cbd7db3bcabd1f3c8" uuid = "908f55d8-4145-4867-9c14-5dad1a479e4d" -version = "0.4.5" +version = "0.4.6" [[deps.ClimaCorePlots]] deps = ["ClimaCore", "RecipesBase", "StaticArrays", "TriplotBase"] @@ -584,10 +584,10 @@ uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" version = "1.16.0" [[deps.DataFrames]] -deps = ["Compat", "DataAPI", "DataStructures", "Future", "InlineStrings", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrecompileTools", "PrettyTables", "Printf", "REPL", "Random", "Reexport", "SentinelArrays", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] -git-tree-sha1 = "04c738083f29f86e62c8afc341f0967d8717bdb8" +deps = ["Compat", "DataAPI", "DataStructures", "Future", "InlineStrings", "InvertedIndices", "IteratorInterfaceExtensions", "LinearAlgebra", "Markdown", "Missings", "PooledArrays", "PrecompileTools", "PrettyTables", "Printf", "Random", "Reexport", "SentinelArrays", "SortingAlgorithms", "Statistics", "TableTraits", "Tables", "Unicode"] +git-tree-sha1 = "fb61b4812c49343d7ef0b533ba982c46021938a6" uuid = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" -version = "1.6.1" +version = "1.7.0" [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] @@ -686,9 +686,9 @@ uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" [[deps.Distributions]] deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "e6c693a0e4394f8fda0e51a5bdf5aef26f8235e9" +git-tree-sha1 = "d7477ecdafb813ddee2ae727afa94e9dcb5f3fb0" uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.111" +version = "0.25.112" [deps.Distributions.extensions] DistributionsChainRulesCoreExt = "ChainRulesCore" @@ -778,9 +778,9 @@ version = "1.8.0" [[deps.FFTW_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "c6033cc3892d0ef5bb9cd29b7f2f0331ea5184ea" +git-tree-sha1 = "4d81ed14783ec49ce9f2e168208a12ce1815aa25" uuid = "f5851436-0d7a-5f13-b9de-f02708fd171a" -version = "3.3.10+0" +version = "3.3.10+1" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] @@ -949,10 +949,10 @@ uuid = "46192b85-c4d5-4398-a991-12ede77f4527" version = "0.1.6" [[deps.GPUCompiler]] -deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "Preferences", "Scratch", "Serialization", "TOML", "TimerOutputs", "UUIDs"] -git-tree-sha1 = "ab29216184312f99ff957b32cd63c2fe9c928b91" +deps = ["ExprTools", "InteractiveUtils", "LLVM", "Libdl", "Logging", "PrecompileTools", "Preferences", "Scratch", "Serialization", "TOML", "TimerOutputs", "UUIDs"] +git-tree-sha1 = "1d6f290a5eb1201cd63574fbc4440c788d5cb38f" uuid = "61eb1bfa-7361-4325-ad38-22787b887f55" -version = "0.26.7" +version = "0.27.8" [[deps.GaussQuadrature]] deps = ["SpecialFunctions"] @@ -967,9 +967,9 @@ version = "0.4.2" [[deps.GeoInterface]] deps = ["Extents", "GeoFormatTypes"] -git-tree-sha1 = "5921fc0704e40c024571eca551800c699f86ceb4" +git-tree-sha1 = "2f6fce56cdb8373637a6614e14a5768a88450de2" uuid = "cf35fbd7-0cd7-5166-be24-54bfbe79505f" -version = "1.3.6" +version = "1.3.7" [[deps.GeometryBasics]] deps = ["EarCut_jll", "Extents", "GeoInterface", "IterTools", "LinearAlgebra", "StaticArrays", "StructArrays", "Tables"] @@ -1051,10 +1051,10 @@ weakdeps = ["MPI"] MPIExt = "MPI" [[deps.HDF5_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "OpenSSL_jll", "TOML", "Zlib_jll", "libaec_jll"] -git-tree-sha1 = "82a471768b513dc39e471540fdadc84ff80ff997" +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "OpenSSL_jll", "TOML", "Zlib_jll", "libaec_jll"] +git-tree-sha1 = "38c8874692d48d5440d5752d6c74b0c6b0b60739" uuid = "0234f1f7-429e-5d53-9886-15a909be8d59" -version = "1.14.3+3" +version = "1.14.2+1" [[deps.HarfBuzz_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll"] @@ -1064,9 +1064,9 @@ version = "8.3.1+0" [[deps.Hwloc_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "5e19e1e4fa3e71b774ce746274364aef0234634e" +git-tree-sha1 = "378267a829b1e17423d32ce6d905f37a12c1fd84" uuid = "e33a78d0-f292-5ffc-b300-72abe9b543c8" -version = "2.11.1+0" +version = "2.11.1+1" [[deps.HypergeometricFunctions]] deps = ["LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] @@ -1188,9 +1188,9 @@ weakdeps = ["Random", "RecipesBase", "Statistics"] IntervalSetsStatisticsExt = "Statistics" [[deps.InverseFunctions]] -git-tree-sha1 = "2787db24f4e03daf859c6509ff87764e4182f7d1" +git-tree-sha1 = "a779299d77cd080bf77b97535acecd73e1c5e5cb" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.16" +version = "0.1.17" weakdeps = ["Dates", "Test"] [deps.InverseFunctions.extensions] @@ -1239,9 +1239,9 @@ version = "0.9.9" [[deps.JLD2]] deps = ["FileIO", "MacroTools", "Mmap", "OrderedCollections", "PrecompileTools", "Requires", "TranscodingStreams"] -git-tree-sha1 = "1dbe274ad1c199490b19a153b60a9e46c5386f8d" +git-tree-sha1 = "9b8b3233d4a611a68f6cbcba96049c8d6fd3de73" uuid = "033835bb-8acc-5ee8-8aae-3f567f8a3819" -version = "0.5.1" +version = "0.5.4" [[deps.JLLWrappers]] deps = ["Artifacts", "Preferences"] @@ -1263,9 +1263,9 @@ version = "0.1.5" [[deps.JpegTurbo_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "c84a835e1a09b289ffcd2271bf2a337bbdda6637" +git-tree-sha1 = "25ee0be4d43d0269027024d75a24c24d6c6e590c" uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" -version = "3.0.3+0" +version = "3.0.4+0" [[deps.JuliaInterpreter]] deps = ["CodeTracking", "InteractiveUtils", "Random", "UUIDs"] @@ -1281,9 +1281,9 @@ version = "0.2.1+0" [[deps.KernelAbstractions]] deps = ["Adapt", "Atomix", "InteractiveUtils", "MacroTools", "PrecompileTools", "Requires", "StaticArrays", "UUIDs", "UnsafeAtomics", "UnsafeAtomicsLLVM"] -git-tree-sha1 = "cb1cff88ef2f3a157cbad75bbe6b229e1975e498" +git-tree-sha1 = "045d41a364a81e357757c566b5a69fd4a2a2c445" uuid = "63c18a36-062a-441e-b654-da1e3ab1ce7c" -version = "0.9.25" +version = "0.9.26" weakdeps = ["EnzymeCore", "LinearAlgebra", "SparseArrays"] [deps.KernelAbstractions.extensions] @@ -1327,9 +1327,9 @@ version = "3.0.0+1" [[deps.LLVM]] deps = ["CEnum", "LLVMExtra_jll", "Libdl", "Preferences", "Printf", "Requires", "Unicode"] -git-tree-sha1 = "2470e69781ddd70b8878491233cd09bc1bd7fc96" +git-tree-sha1 = "4ad43cb0a4bb5e5b1506e1d1f48646d7e0c80363" uuid = "929cbde3-209d-540e-8aea-75f648917ca0" -version = "8.1.0" +version = "9.1.2" weakdeps = ["BFloat16s"] [deps.LLVM.extensions] @@ -1337,9 +1337,9 @@ weakdeps = ["BFloat16s"] [[deps.LLVMExtra_jll]] deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"] -git-tree-sha1 = "597d1c758c9ae5d985ba4202386a607c675ee700" +git-tree-sha1 = "05a8bd5a42309a9ec82f700876903abce1017dd3" uuid = "dad2f222-ce93-54a1-a47d-0025e8a3acab" -version = "0.0.31+0" +version = "0.0.34+0" [[deps.LLVMLoopInfo]] git-tree-sha1 = "2e5c102cfc41f48ae4740c7eca7743cc7e7b75ea" @@ -1363,9 +1363,9 @@ weakdeps = ["Serialization"] [[deps.LZO_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "70c5da094887fd2cae843b8db33920bac4b6f07d" +git-tree-sha1 = "854a9c268c43b77b0a27f22d7fab8d33cdb3a731" uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" -version = "2.10.2+0" +version = "2.10.2+1" [[deps.LaTeXStrings]] git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" @@ -1527,9 +1527,9 @@ version = "3.0.2" [[deps.Lz4_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "7f26c8fc5229e68484e0b3447312c98e16207d11" +git-tree-sha1 = "abf88ff67f4fd89839efcae2f4c39cbc4ecd0846" uuid = "5ced341a-0733-55b8-9ab6-a4889d929147" -version = "1.10.0+0" +version = "1.10.0+1" [[deps.MKL_jll]] deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] @@ -1544,9 +1544,9 @@ version = "0.4.17" [[deps.MPI]] deps = ["Distributed", "DocStringExtensions", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "PkgVersion", "PrecompileTools", "Requires", "Serialization", "Sockets"] -git-tree-sha1 = "5465632f9dd11aea0d912cb64a6f80640092a33e" +git-tree-sha1 = "892676019c58f34e38743bc989b0eca5bce5edc5" uuid = "da04e1cc-30fd-572f-bb4f-1f8673147195" -version = "0.20.21" +version = "0.20.22" [deps.MPI.extensions] AMDGPUExt = "AMDGPU" @@ -1570,9 +1570,9 @@ version = "0.1.11" [[deps.MPItrampoline_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "8c35d5420193841b2f367e658540e8d9e0601ed0" +git-tree-sha1 = "fde81c9f9c94fe5fbeaed7b3f1330305cf9a327c" uuid = "f1f71cc9-e9ae-5b93-9b94-4fe0e1ad3748" -version = "5.4.0+0" +version = "5.5.0+0" [[deps.MacroTools]] deps = ["Markdown", "Random"] @@ -1687,10 +1687,10 @@ uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" version = "1.0.2" [[deps.NetCDF_jll]] -deps = ["Artifacts", "Blosc_jll", "Bzip2_jll", "HDF5_jll", "JLLWrappers", "LazyArtifacts", "LibCURL_jll", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "TOML", "XML2_jll", "Zlib_jll", "Zstd_jll", "libzip_jll"] -git-tree-sha1 = "4686378c4ae1d1948cfbe46c002a11a4265dcb07" +deps = ["Artifacts", "Blosc_jll", "Bzip2_jll", "HDF5_jll", "JLLWrappers", "LibCURL_jll", "Libdl", "OpenMPI_jll", "XML2_jll", "Zlib_jll", "Zstd_jll", "libzip_jll"] +git-tree-sha1 = "a8af1798e4eb9ff768ce7fdefc0e957097793f15" uuid = "7243133f-43d8-5620-bbf4-c2c921802cf3" -version = "400.902.211+1" +version = "400.902.209+0" [[deps.Netpbm]] deps = ["FileIO", "ImageCore", "ImageMetadata"] @@ -1763,16 +1763,16 @@ uuid = "05823500-19ac-5b8b-9628-191a04bc5112" version = "0.8.1+2" [[deps.OpenMPI_jll]] -deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML"] -git-tree-sha1 = "e25c1778a98e34219a00455d6e4384e017ea9762" +deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "MPIPreferences", "TOML", "Zlib_jll"] +git-tree-sha1 = "bfce6d523861a6c562721b262c0d1aaeead2647f" uuid = "fe0851c0-eecd-5654-98d4-656369965a5c" -version = "4.1.6+0" +version = "5.0.5+0" [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "1b35263570443fdd9e76c76b7062116e2f374ab8" +git-tree-sha1 = "7493f61f55a6cce7325f197443aa80d32554ba10" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.15+0" +version = "3.0.15+1" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] @@ -1958,9 +1958,9 @@ version = "1.4.3" [[deps.PrettyTables]] deps = ["Crayons", "LaTeXStrings", "Markdown", "PrecompileTools", "Printf", "Reexport", "StringManipulation", "Tables"] -git-tree-sha1 = "66b20dd35966a748321d3b2537c4584cf40387c7" +git-tree-sha1 = "1101cd475833706e4d0e7b122218257178f48f34" uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "2.3.2" +version = "2.4.0" [[deps.Printf]] deps = ["Unicode"] @@ -2007,9 +2007,9 @@ version = "1.0.0" [[deps.QuadGK]] deps = ["DataStructures", "LinearAlgebra"] -git-tree-sha1 = "1d587203cf851a51bf1ea31ad7ff89eff8d625ea" +git-tree-sha1 = "cda3b045cf9ef07a08ad46731f5a3165e56cf3da" uuid = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" -version = "2.11.0" +version = "2.11.1" [deps.QuadGK.extensions] QuadGKEnzymeExt = "Enzyme" @@ -2153,9 +2153,9 @@ version = "0.7.0" [[deps.SIMD]] deps = ["PrecompileTools"] -git-tree-sha1 = "2803cab51702db743f3fda07dd1745aadfbf43bd" +git-tree-sha1 = "98ca7c29edd6fc79cd74c61accb7010a4e7aee33" uuid = "fdea26ae-647d-5447-a871-4b548cad5224" -version = "3.5.0" +version = "3.6.0" [[deps.SIMDTypes]] git-tree-sha1 = "330289636fb8107c5f32088d2741e9fd7a061a5c" @@ -2164,9 +2164,9 @@ version = "0.1.0" [[deps.SciMLBase]] deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "Expronicon", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "c96f81c3e98d5e2f0848fb42aba4383d772c3bb7" +git-tree-sha1 = "71857d6bab17e7ac6802d86ffcc75423b8c1d812" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.53.1" +version = "2.54.0" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" @@ -2393,9 +2393,9 @@ version = "0.3.7" [[deps.StringManipulation]] deps = ["PrecompileTools"] -git-tree-sha1 = "a04cabe79c5f01f4d723cc6704070ada0b9d46d5" +git-tree-sha1 = "a6b1675a536c5ad1a60e5a5153e1fee12eb146e3" uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" -version = "0.3.4" +version = "0.4.0" [[deps.StructArrays]] deps = ["ConstructionBase", "DataAPI", "Tables"] @@ -2421,9 +2421,9 @@ version = "7.2.1+1" [[deps.SurfaceFluxes]] deps = ["DocStringExtensions", "RootSolvers", "Thermodynamics"] -git-tree-sha1 = "89c701c87f378ce95e7ddbcd69b8f1106ba8b968" +git-tree-sha1 = "aee530bde85cd41374273568cb649e72d82921e7" uuid = "49b00bb7-8bd4-4f2b-b78c-51cd0450215f" -version = "0.11.0" +version = "0.12.0" weakdeps = ["ClimaParams"] [deps.SurfaceFluxes.extensions] @@ -2431,9 +2431,9 @@ weakdeps = ["ClimaParams"] [[deps.SymbolicIndexingInterface]] deps = ["Accessors", "ArrayInterface", "RuntimeGeneratedFunctions", "StaticArraysCore"] -git-tree-sha1 = "988e04b34a4c3b824fb656f542473df99a4f610d" +git-tree-sha1 = "0225f7c62f5f78db35aae6abb2e5cabe38ce578f" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" -version = "0.3.30" +version = "0.3.31" [[deps.TOML]] deps = ["Dates"] @@ -2606,9 +2606,9 @@ version = "1.0.0" [[deps.WriteVTK]] deps = ["Base64", "CodecZlib", "FillArrays", "LightXML", "TranscodingStreams", "VTKBase"] -git-tree-sha1 = "46664bb833f24e4fe561192e3753c9168c3b71b2" +git-tree-sha1 = "93fd3a6bbeb33c18929b7d8b4f4dbd2024395f70" uuid = "64499a7a-5c06-52f2-abe2-ccb03c286192" -version = "1.19.2" +version = "1.20.0" [[deps.XML2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Zlib_jll"] @@ -2689,9 +2689,9 @@ version = "1.2.13+1" [[deps.Zstd_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "e678132f07ddb5bfa46857f0d7620fb9be675d3b" +git-tree-sha1 = "555d1076590a6cc2fdee2ef1469451f872d8b41b" uuid = "3161d3a3-bdf6-5164-811a-617609db77b4" -version = "1.5.6+0" +version = "1.5.6+1" [[deps.isoband_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] diff --git a/perf/Project.toml b/perf/Project.toml index 302c433f0d..cc0ee0b2b4 100644 --- a/perf/Project.toml +++ b/perf/Project.toml @@ -27,6 +27,7 @@ DiffEqNoiseProcess = "77a26b50-5914-5dd7-bc55-306e6241c503" DocStringExtensions = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" FastGaussQuadrature = "442a2c76-b920-505d-bb47-c5924d526838" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" +GPUCompiler = "61eb1bfa-7361-4325-ad38-22787b887f55" Glob = "c27321d9-0574-5035-807b-f59d2c89b15c" HDF5 = "f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f" Insolation = "e98cc03f-d57e-4e3c-b70c-8d51efe9e0d8" @@ -36,6 +37,7 @@ JET = "c3a54625-cd67-489e-a8e7-0a5a0ff4e31b" JLD2 = "033835bb-8acc-5ee8-8aae-3f567f8a3819" JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6" Krylov = "ba0b0d4f-ebba-5204-a429-3ac8c609bfb7" +LLVM = "929cbde3-209d-540e-8aea-75f648917ca0" LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" Logging = "56ddb016-857b-54e1-b83d-db4d58db5568" MPI = "da04e1cc-30fd-572f-bb4f-1f8673147195" diff --git a/perf/jet_report_nfailures.jl b/perf/jet_report_nfailures.jl index 9c4b670902..a94d123d38 100644 --- a/perf/jet_report_nfailures.jl +++ b/perf/jet_report_nfailures.jl @@ -26,6 +26,7 @@ Yₜ = similar(Y); Yₜ_exp = similar(Y); Yₜ_lim = similar(Y); ref_Y = similar(Y); + #! format: off n["step!"] = @n_failures SciMLBase.step!(integrator); n["horizontal_advection_tendency!"] = @n_failures CA.horizontal_advection_tendency!(Yₜ, Y, p, t); @@ -34,7 +35,7 @@ n["explicit_vertical_advection_tendency!"] = @n_failures CA.explicit_verti n["hyperdiffusion_tendency!"] = @n_failures CA.hyperdiffusion_tendency!(Yₜ_exp, Yₜ_lim, Y, p, t); n["remaining_tendency!"] = @n_failures CA.remaining_tendency!(Yₜ_exp, Yₜ_lim, Y, p, t); n["additional_tendency!"] = @n_failures CA.additional_tendency!(Yₜ, Y, p, t); -n["vertical_diffusion_boundary_layer_tendency!"] = @n_failures CA.vertical_diffusion_boundary_layer_tendency!(Yₜ, Y, p, t); +n["vertical_diffusion_boundary_layer_tendency!"] = @n_failures CA.vertical_diffusion_boundary_layer_tendency!(Yₜ, Y, p, t, p.atmos.vert_diff); n["implicit_tendency!"] = @n_failures CA.implicit_tendency!(Yₜ, Y, p, t); n["set_precomputed_quantities!"] = @n_failures CA.set_precomputed_quantities!(Y, p, t); n["limiters_func!"] = @n_failures CA.limiters_func!(Y, p, t, ref_Y); @@ -47,3 +48,7 @@ n = filter(x -> x.second ≠ 0, n) @info "n-jet failures (excluding n=0):" show(IOContext(stdout, :limit => false), MIME"text/plain"(), n) println() + +using JET +using NCDatasets, CUDA, HDF5, LLVM, GPUCompiler +@test_opt ignored_modules = (NCDatasets, CUDA, HDF5, LLVM, GPUCompiler) SciMLBase.step!(integrator) diff --git a/src/callbacks/callbacks.jl b/src/callbacks/callbacks.jl index f3be69cf03..37359a4ab0 100644 --- a/src/callbacks/callbacks.jl +++ b/src/callbacks/callbacks.jl @@ -326,24 +326,6 @@ function set_insolation_variables!(Y, p, t, ::TimeVaryingInsolation) end NVTX.@annotate function save_state_to_disk_func(integrator, output_dir) - (; t, u, p) = integrator - Y = u - - day = floor(Int, t / (60 * 60 * 24)) - sec = floor(Int, t % (60 * 60 * 24)) - @info "Saving state to HDF5 file on day $day second $sec" - output_file = joinpath(output_dir, "day$day.$sec.hdf5") - comms_ctx = ClimaComms.context(integrator.u.c) - hdfwriter = InputOutput.HDF5Writer(output_file, comms_ctx) - # TODO: a better way to write metadata - InputOutput.HDF5.write_attribute(hdfwriter.file, "time", t) - InputOutput.HDF5.write_attribute( - hdfwriter.file, - "atmos_model_hash", - hash(p.atmos), - ) - InputOutput.write!(hdfwriter, Y, "Y") - Base.close(hdfwriter) return nothing end diff --git a/src/callbacks/get_callbacks.jl b/src/callbacks/get_callbacks.jl index dc29cde246..55d009e013 100644 --- a/src/callbacks/get_callbacks.jl +++ b/src/callbacks/get_callbacks.jl @@ -178,16 +178,16 @@ function get_callbacks(config, sim_info, atmos, params, Y, p, t_start) (; dt, output_dir) = sim_info callbacks = () - if parsed_args["log_progress"] - @info "Progress logging enabled." - callbacks = ( - callbacks..., - call_every_n_steps( - (integrator) -> print_walltime_estimate(integrator); - skip_first = true, - ), - ) - end + # if parsed_args["log_progress"] + # @info "Progress logging enabled." + # callbacks = ( + # callbacks..., + # call_every_n_steps( + # (integrator) -> print_walltime_estimate(integrator); + # skip_first = true, + # ), + # ) + # end check_nan_every = parsed_args["check_nan_every"] if check_nan_every > 0 @info "Checking NaNs in the state every $(check_nan_every) steps" @@ -199,15 +199,15 @@ function get_callbacks(config, sim_info, atmos, params, Y, p, t_start) ), ) end - callbacks = ( - callbacks..., - call_every_n_steps( - terminate!; - skip_first = true, - condition = (u, t, integrator) -> - maybe_graceful_exit(integrator), - ), - ) + # callbacks = ( + # callbacks..., + # call_every_n_steps( + # terminate!; + # skip_first = true, + # condition = (u, t, integrator) -> + # maybe_graceful_exit(integrator), + # ), + # ) if occursin("months", parsed_args["dt_save_state_to_disk"]) months = match(r"^(\d+)months$", parsed_args["dt_save_state_to_disk"]) @@ -243,16 +243,16 @@ function get_callbacks(config, sim_info, atmos, params, Y, p, t_start) end end - if is_distributed(comms_ctx) - callbacks = ( - callbacks..., - call_every_n_steps( - gc_func, - parse(Int, get(ENV, "CLIMAATMOS_GC_NSTEPS", "1000")), - skip_first = true, - ), - ) - end + # if is_distributed(comms_ctx) + # callbacks = ( + # callbacks..., + # call_every_n_steps( + # gc_func, + # parse(Int, get(ENV, "CLIMAATMOS_GC_NSTEPS", "1000")), + # skip_first = true, + # ), + # ) + # end if parsed_args["check_conservation"] callbacks = ( diff --git a/src/parameterized_tendencies/radiation/radiation.jl b/src/parameterized_tendencies/radiation/radiation.jl index daf911e359..de47066cd4 100644 --- a/src/parameterized_tendencies/radiation/radiation.jl +++ b/src/parameterized_tendencies/radiation/radiation.jl @@ -322,12 +322,14 @@ function radiation_tendency!(Yₜ, Y, p, t, radiation_mode::RadiationDYCOMS) # Find the values of (z, ρ, q_tot) at the q_tot = 0.008 isoline, i.e., at # the level whose value of q_tot is closest to 0.008. - Operators.column_reduce!( - (nt1, nt2) -> - abs(nt1.q_tot - FT(0.008)) < abs(nt2.q_tot - FT(0.008)) ? nt1 : nt2, - isoline_z_ρ_q, - Base.broadcasted(NT ∘ tuple, ᶜz, Y.c.ρ, ᶜspecific.q_tot), - ) + let FT=FT + Operators.column_reduce!( + (nt1, nt2) -> + abs(nt1.q_tot - FT(0.008)) < abs(nt2.q_tot - FT(0.008)) ? nt1 : nt2, + isoline_z_ρ_q, + Base.broadcasted(NT ∘ tuple, ᶜz, Y.c.ρ, ᶜspecific.q_tot), + ) + end zi = isoline_z_ρ_q.z ρi = isoline_z_ρ_q.ρ