Skip to content

Commit

Permalink
Make GWP GPU-compatible
Browse files Browse the repository at this point in the history
  • Loading branch information
Sbozzolo authored and 谢萧涯 committed Sep 14, 2024
1 parent 11be7a8 commit 68c6b32
Show file tree
Hide file tree
Showing 11 changed files with 313 additions and 310 deletions.
12 changes: 12 additions & 0 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -761,6 +761,18 @@ steps:
- group: "GPU"
steps:

- label: "GPU:Gravity waves"
command: >
julia --color=yes --project=examples 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/*"
env:
CLIMACOMMS_DEVICE: "CUDA"
agents:
slurm_gpus: 1
slurm_mem: 16G

- label: "GPU: baroclinic wave"
key: "sphere_baroclinic_wave_rhoe_gpu"
command: >
Expand Down
2 changes: 2 additions & 0 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
SurfaceFluxes = "49b00bb7-8bd4-4f2b-b78c-51cd0450215f"
Thermodynamics = "b60c26fb-14c3-4610-9d3e-2d17fe7ff00c"
UnrolledUtilities = "0fe1646c-419e-43be-ac14-22321958931b"
YAML = "ddb6d928-2868-570f-bddf-ab3f9cf99eb6"

[compat]
Expand Down Expand Up @@ -63,5 +64,6 @@ StaticArrays = "1.7"
Statistics = "1"
SurfaceFluxes = "0.11, 0.12"
Thermodynamics = "0.12.4"
UnrolledUtilities = "0.1"
YAML = "0.4"
julia = "1.9"
3 changes: 3 additions & 0 deletions config/model_configs/sphere_nonorographic_gravity_wave.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
t_end: "1500secs"
dt: "400secs"
non_orographic_gravity_wave: true
15 changes: 12 additions & 3 deletions examples/Manifest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -315,7 +315,7 @@ version = "0.5.7"
Makie = "ee78f7c6-11fb-53f2-987a-cfe4a2b5a57a"

[[deps.ClimaAtmos]]
deps = ["Adapt", "ArgParse", "ArtifactWrappers", "Artifacts", "AtmosphericProfilesLibrary", "ClimaComms", "ClimaCore", "ClimaDiagnostics", "ClimaParams", "ClimaTimeSteppers", "ClimaUtilities", "CloudMicrophysics", "Dates", "DiffEqBase", "FastGaussQuadrature", "Insolation", "Interpolations", "LazyArtifacts", "LinearAlgebra", "Logging", "NCDatasets", "NVTX", "RRTMGP", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "Thermodynamics", "YAML"]
deps = ["Adapt", "ArgParse", "ArtifactWrappers", "Artifacts", "AtmosphericProfilesLibrary", "ClimaComms", "ClimaCore", "ClimaDiagnostics", "ClimaParams", "ClimaTimeSteppers", "ClimaUtilities", "CloudMicrophysics", "Dates", "DiffEqBase", "FastGaussQuadrature", "Insolation", "Interpolations", "LazyArtifacts", "LinearAlgebra", "Logging", "NCDatasets", "NVTX", "RRTMGP", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "Thermodynamics", "UnrolledUtilities", "YAML"]
path = ".."
uuid = "b2c96348-7fb7-4fe0-8da9-78d88439e717"
version = "0.27.5"
Expand All @@ -332,9 +332,9 @@ weakdeps = ["CUDA", "MPI"]

[[deps.ClimaCore]]
deps = ["Adapt", "BandedMatrices", "BlockArrays", "ClimaComms", "CubedSphere", "DataStructures", "DocStringExtensions", "ForwardDiff", "GaussQuadrature", "GilbertCurves", "HDF5", "InteractiveUtils", "IntervalSets", "KrylovKit", "LinearAlgebra", "MultiBroadcastFusion", "NVTX", "PkgVersion", "RecursiveArrayTools", "RootSolvers", "SparseArrays", "StaticArrays", "Statistics", "Unrolled"]
git-tree-sha1 = "ffd27299555f968f96e348060146228c6259bb4b"
git-tree-sha1 = "806e8490ff1aa664ca579544d798f8addfa1b07d"
uuid = "d414da3d-4745-48bb-8d80-42e94e092884"
version = "0.14.14"
version = "0.14.15"
weakdeps = ["CUDA", "Krylov"]

[deps.ClimaCore.extensions]
Expand Down Expand Up @@ -2434,6 +2434,15 @@ git-tree-sha1 = "6cc9d682755680e0f0be87c56392b7651efc2c7b"
uuid = "9602ed7d-8fef-5bc8-8597-8f21381861e8"
version = "0.1.5"

[[deps.UnrolledUtilities]]
git-tree-sha1 = "d0b2aa2d71fa2f4494cb3cf69719a6807ea0df40"
uuid = "0fe1646c-419e-43be-ac14-22321958931b"
version = "0.1.4"
weakdeps = ["StaticArrays"]

[deps.UnrolledUtilities.extensions]
UnrolledUtilitiesStaticArraysExt = "StaticArrays"

[[deps.UnsafeAtomics]]
git-tree-sha1 = "6331ac3440856ea1988316b46045303bef658278"
uuid = "013be700-e6cd-48c3-b4a1-df204f14c38f"
Expand Down
15 changes: 12 additions & 3 deletions perf/Manifest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ version = "0.5.6"
GeoMakie = "db073c08-6b98-4ee5-b6a4-5efafb3259c6"

[[deps.ClimaAtmos]]
deps = ["Adapt", "ArgParse", "ArtifactWrappers", "Artifacts", "AtmosphericProfilesLibrary", "ClimaComms", "ClimaCore", "ClimaDiagnostics", "ClimaParams", "ClimaTimeSteppers", "ClimaUtilities", "CloudMicrophysics", "Dates", "DiffEqBase", "FastGaussQuadrature", "Insolation", "Interpolations", "LazyArtifacts", "LinearAlgebra", "Logging", "NCDatasets", "NVTX", "RRTMGP", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "Thermodynamics", "YAML"]
deps = ["Adapt", "ArgParse", "ArtifactWrappers", "Artifacts", "AtmosphericProfilesLibrary", "ClimaComms", "ClimaCore", "ClimaDiagnostics", "ClimaParams", "ClimaTimeSteppers", "ClimaUtilities", "CloudMicrophysics", "Dates", "DiffEqBase", "FastGaussQuadrature", "Insolation", "Interpolations", "LazyArtifacts", "LinearAlgebra", "Logging", "NCDatasets", "NVTX", "RRTMGP", "SciMLBase", "StaticArrays", "Statistics", "SurfaceFluxes", "Thermodynamics", "UnrolledUtilities", "YAML"]
path = ".."
uuid = "b2c96348-7fb7-4fe0-8da9-78d88439e717"
version = "0.27.5"
Expand All @@ -343,9 +343,9 @@ weakdeps = ["CUDA", "MPI"]

[[deps.ClimaCore]]
deps = ["Adapt", "BandedMatrices", "BlockArrays", "ClimaComms", "CubedSphere", "DataStructures", "DocStringExtensions", "ForwardDiff", "GaussQuadrature", "GilbertCurves", "HDF5", "InteractiveUtils", "IntervalSets", "KrylovKit", "LinearAlgebra", "MultiBroadcastFusion", "NVTX", "PkgVersion", "RecursiveArrayTools", "RootSolvers", "SparseArrays", "StaticArrays", "Statistics", "Unrolled"]
git-tree-sha1 = "ffd27299555f968f96e348060146228c6259bb4b"
git-tree-sha1 = "806e8490ff1aa664ca579544d798f8addfa1b07d"
uuid = "d414da3d-4745-48bb-8d80-42e94e092884"
version = "0.14.14"
version = "0.14.15"
weakdeps = ["CUDA", "Krylov"]

[deps.ClimaCore.extensions]
Expand Down Expand Up @@ -2563,6 +2563,15 @@ git-tree-sha1 = "6cc9d682755680e0f0be87c56392b7651efc2c7b"
uuid = "9602ed7d-8fef-5bc8-8597-8f21381861e8"
version = "0.1.5"

[[deps.UnrolledUtilities]]
git-tree-sha1 = "d0b2aa2d71fa2f4494cb3cf69719a6807ea0df40"
uuid = "0fe1646c-419e-43be-ac14-22321958931b"
version = "0.1.4"
weakdeps = ["StaticArrays"]

[deps.UnrolledUtilities.extensions]
UnrolledUtilitiesStaticArraysExt = "StaticArrays"

[[deps.UnsafeAtomics]]
git-tree-sha1 = "6331ac3440856ea1988316b46045303bef658278"
uuid = "013be700-e6cd-48c3-b4a1-df204f14c38f"
Expand Down
5 changes: 4 additions & 1 deletion regression_tests/ref_counter.jl
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
176
177

#=
177:
- change numerics of non-orographic gravity waves
176:
- Switch to hyperbolic tangent stretching
Expand Down
Loading

0 comments on commit 68c6b32

Please sign in to comment.