Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(0.88.0) MPI communication and computation overlap in the HydrostaticFreeSurfaceModel and NonhydrostaticModel #3125

Merged
merged 576 commits into from
Sep 19, 2023
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
576 commits
Select commit Hold shift + click to select a range
eb6f5e6
comment
simone-silvestri Jun 12, 2023
80fdc83
fixed tag problems
simone-silvestri Jun 12, 2023
7cd4b44
bugfix
simone-silvestri Jun 12, 2023
28c26bc
Merge branch 'main' into ss/load-balance-and-corners
simone-silvestri Jun 12, 2023
9f3b273
resolve conflicts
navidcy Jun 13, 2023
d2ad49c
Update scalar_biharmonic_diffusivity.jl
simone-silvestri Jun 13, 2023
165e15e
Update src/Distributed/multi_architectures.jl
simone-silvestri Jun 14, 2023
88569a1
Update src/Distributed/partition_assemble.jl
simone-silvestri Jun 14, 2023
89603f2
Update src/ImmersedBoundaries/ImmersedBoundaries.jl
simone-silvestri Jun 14, 2023
10b37da
Update src/ImmersedBoundaries/active_cells_map.jl
simone-silvestri Jun 14, 2023
a24ef06
Merge branch 'main' into glw/catke-parameter-refactor
glwagner Jun 14, 2023
3c68709
Update src/Distributed/interleave_comm_and_comp.jl
simone-silvestri Jun 14, 2023
0206dd2
Merge branch 'glw/catke-parameter-refactor' of https://github.com/Cli…
glwagner Jun 14, 2023
99d7f98
Clean up batched tridiagonal solver and vertically implicit solver
glwagner Jun 14, 2023
287ac42
Fix bug in batched tridiagonal solver
glwagner Jun 14, 2023
814cd43
bugfix
simone-silvestri Jun 20, 2023
690d61c
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Jun 20, 2023
4b6d8d6
Merge branch 'main' into ss/load-balance-and-corners
simone-silvestri Jun 21, 2023
17e6fc0
Merge remote-tracking branch 'origin/main' into glw/catke-parameter-r…
glwagner Jun 22, 2023
df01667
Try to fix multi region immersed boundary issue
glwagner Jun 22, 2023
3113880
Hopefully fix immersed boundary grid constructor
glwagner Jun 23, 2023
389e243
Another fix
glwagner Jun 23, 2023
5d6fac3
Merge branch 'main' into ss/load-balance-and-corners
navidcy Jun 24, 2023
6492041
fixed project and manifest
simone-silvestri Jun 24, 2023
5633d14
convert instead of FT
simone-silvestri Jun 28, 2023
9f895bb
export KernelParameters
simone-silvestri Jun 28, 2023
9842f6e
remove FT
simone-silvestri Jun 28, 2023
126829c
removed useless where FT
simone-silvestri Jun 28, 2023
c5dc1ec
Merge remote-tracking branch 'origin/main' into ss/load-balance-and-c…
simone-silvestri Jun 28, 2023
9569ac9
small bugfix
simone-silvestri Jun 28, 2023
2917114
update manifest
simone-silvestri Jun 28, 2023
fa38abc
remove unbuffered communication
simone-silvestri Jun 28, 2023
2cac349
little bit of a cleanup
simone-silvestri Jun 28, 2023
8564df2
removed `views` comment
simone-silvestri Jun 28, 2023
a8c29e1
couple of bugfixes
simone-silvestri Jun 28, 2023
db8d996
fixed tests
simone-silvestri Jun 28, 2023
6681636
probably done
simone-silvestri Jun 28, 2023
d1eb3ba
same thing for nonhydrostatic model
simone-silvestri Jun 28, 2023
f2406fb
include file
simone-silvestri Jun 28, 2023
03ff7da
bugfix
simone-silvestri Jun 28, 2023
23a0040
prepare for nonhydrostatic multiregion
simone-silvestri Jun 28, 2023
f2f5de3
also here
simone-silvestri Jun 28, 2023
4e2b04b
bugfix
simone-silvestri Jun 28, 2023
b29a798
other bugfix
simone-silvestri Jun 28, 2023
f0b93e5
fix closures
simone-silvestri Jun 28, 2023
80f07c7
bugfix
simone-silvestri Jun 28, 2023
2f28cb0
simplify
simone-silvestri Jun 28, 2023
4c8136b
2D leith requires 2 halos!
simone-silvestri Jun 28, 2023
b222f57
AMD and Smag require 1 halo!
simone-silvestri Jun 28, 2023
752e6f0
wrong order
simone-silvestri Jun 28, 2023
e36931a
correct halo handling for diffusivities
simone-silvestri Jun 28, 2023
527b240
correct Leith formulation + fixes
simone-silvestri Jun 28, 2023
0f3a06a
`only_local_halos` kwarg in `fill_halo_regions!`
simone-silvestri Jun 28, 2023
718e0f8
bugfix
simone-silvestri Jun 28, 2023
2e33069
FT on GPU
simone-silvestri Jun 28, 2023
4be413e
bugfix
simone-silvestri Jun 28, 2023
ce0628a
bugfix
simone-silvestri Jun 28, 2023
a8285af
last bugfix?
simone-silvestri Jun 28, 2023
07f8d1d
removed all offsets from kernels + fixed all tests
simone-silvestri Jun 28, 2023
e5975db
fix `_compute!`
simone-silvestri Jun 28, 2023
d82d908
finished
simone-silvestri Jun 28, 2023
bd26e8c
fixed broken tests
simone-silvestri Jun 28, 2023
04bd76a
fixed docs
simone-silvestri Jun 28, 2023
e640e2a
miscellaneous changes
simone-silvestri Jun 29, 2023
5333609
bugfix
simone-silvestri Jun 29, 2023
aaf6f25
removed tests for vertical subdivision
simone-silvestri Jun 29, 2023
c6fcc90
test corner passing
simone-silvestri Jun 29, 2023
66e7ef3
correction
simone-silvestri Jun 29, 2023
d53cba6
retry
simone-silvestri Jun 29, 2023
59c7cd5
fixed all problems
simone-silvestri Jun 29, 2023
9b1412d
Added a validation example
simone-silvestri Jun 29, 2023
28f052e
fixed tests
simone-silvestri Jun 29, 2023
4b6743a
try new test
simone-silvestri Jun 29, 2023
b167ad9
fill send buffers in the correct place
simone-silvestri Jun 30, 2023
a85999d
fixed comments
simone-silvestri Jun 30, 2023
2e3fb94
define async
simone-silvestri Jun 30, 2023
1b0f2a8
pass the grid
simone-silvestri Jun 30, 2023
306655a
bugfix
simone-silvestri Jun 30, 2023
4c737f3
fix show method
simone-silvestri Jun 30, 2023
fb0505d
RefValue for mpi_tag
simone-silvestri Jun 30, 2023
d37a781
comment
simone-silvestri Jun 30, 2023
f5d203b
Merge branch 'main' into ss/load-balance-and-corners
simone-silvestri Jul 1, 2023
bcd4d02
add catke preprint
navidcy Jul 2, 2023
80d46de
remove warning; add ref to catke preprint
navidcy Jul 2, 2023
00a5eba
some code cleanup
navidcy Jul 2, 2023
04e603c
correct the example
simone-silvestri Jul 3, 2023
5f96fdc
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Jul 3, 2023
59ae073
Merge branch 'main' into glw/catke-parameter-refactor
navidcy Jul 3, 2023
c8944b7
Update src/TurbulenceClosures/vertically_implicit_diffusion_solver.jl
glwagner Jul 5, 2023
603f50e
bugfix
simone-silvestri Jul 6, 2023
2e06209
Refactor unit tests
glwagner Jul 6, 2023
86c89fd
Merge branch 'glw/catke-parameter-refactor' of https://github.com/Cli…
glwagner Jul 6, 2023
c724537
Generalize regridding for lat-lon
glwagner Jul 7, 2023
9b62341
Merge branch 'glw/catke-parameter-refactor' of https://github.com/Cli…
glwagner Jul 7, 2023
9069bf4
bugfix
simone-silvestri Jul 10, 2023
40e87b5
Add newline
glwagner Jul 10, 2023
19bc3dd
small correction
simone-silvestri Jul 12, 2023
54f273c
new tests
simone-silvestri Jul 12, 2023
9e520be
bugfix
simone-silvestri Jul 12, 2023
5755a3a
Merge remote-tracking branch 'origin/main' into glw/catke-parameter-r…
glwagner Jul 12, 2023
85d44f7
bugfix
simone-silvestri Jul 13, 2023
fdc0aea
back for testing
simone-silvestri Jul 13, 2023
f8c73ff
back for testing
simone-silvestri Jul 13, 2023
6885c88
update manifest
simone-silvestri Jul 13, 2023
6955b92
more options
simone-silvestri Jul 14, 2023
876e4e3
more
simone-silvestri Jul 14, 2023
0105179
finished
simone-silvestri Jul 14, 2023
3b79b9a
test hypothesis
simone-silvestri Jul 14, 2023
d6520aa
fixed bug - correct speed now
simone-silvestri Jul 14, 2023
5dbf9aa
add space
simone-silvestri Jul 14, 2023
70ac393
bugfix
simone-silvestri Jul 15, 2023
7d03b63
test
simone-silvestri Jul 15, 2023
056ff34
more info
simone-silvestri Jul 15, 2023
2514130
removed left-right connected computation
simone-silvestri Jul 15, 2023
cea3240
bugfix
simone-silvestri Jul 15, 2023
c1b2049
remove info
simone-silvestri Jul 15, 2023
abea7ef
improve
simone-silvestri Jul 15, 2023
c6deb5e
typo
simone-silvestri Jul 15, 2023
66965ff
bugfix
simone-silvestri Jul 15, 2023
2e7354e
bugfix
simone-silvestri Jul 16, 2023
403e74f
correct comments
simone-silvestri Jul 16, 2023
6580a12
bugfix
simone-silvestri Jul 16, 2023
923d1b2
bugfix prescribed velocities
simone-silvestri Jul 17, 2023
511352d
fixes
simone-silvestri Jul 17, 2023
30acce8
ok on mac
simone-silvestri Jul 17, 2023
0e211d7
bugfix
simone-silvestri Jul 17, 2023
242d590
bug fixed
simone-silvestri Jul 17, 2023
6ea2af3
bugfixxed
simone-silvestri Jul 17, 2023
67d27ca
new default
simone-silvestri Jul 17, 2023
19618b1
bugfix
simone-silvestri Jul 17, 2023
93593f8
Merge remote-tracking branch 'origin/ss/fix_split_explicit' into ss/l…
simone-silvestri Jul 17, 2023
3bb5844
remove <<<<HEAD
simone-silvestri Jul 17, 2023
972730a
bugfix PrescribedVelocityFields
simone-silvestri Jul 17, 2023
cc5af47
default in another PR
simone-silvestri Jul 17, 2023
3644e30
bugfix
simone-silvestri Jul 17, 2023
2f60434
flat grids only in Grids
simone-silvestri Jul 17, 2023
a50ebb8
last bugfix
simone-silvestri Jul 17, 2023
ebdbc22
bugfix
simone-silvestri Jul 17, 2023
18eae2d
try partial cells
simone-silvestri Jul 20, 2023
3b8f2d7
bugfix
simone-silvestri Jul 20, 2023
7d97dec
bugfix
simone-silvestri Jul 21, 2023
d5b3978
Merge branch 'main' into glw/catke-parameter-refactor
glwagner Jul 22, 2023
dad1301
Update test_turbulence_closures.jl
glwagner Jul 22, 2023
c57d2c7
small fixes
simone-silvestri Jul 25, 2023
14a32a1
rework IBG and MRG
simone-silvestri Jul 25, 2023
43c83ea
Update src/TurbulenceClosures/vertically_implicit_diffusion_solver.jl
simone-silvestri Jul 25, 2023
45bdebc
small bugfix
simone-silvestri Jul 25, 2023
efa1029
Merge branch 'glw/catke-parameter-refactor' of github.com:CliMA/Ocean…
simone-silvestri Jul 26, 2023
7ff28da
remove multiregion ibg with arrays for the moment
simone-silvestri Jul 26, 2023
9582465
bugfix
simone-silvestri Jul 26, 2023
040c1bd
little cleaner
simone-silvestri Jul 26, 2023
fe5e413
fixed tests
simone-silvestri Jul 26, 2023
2530c9e
Merge remote-tracking branch 'origin/main' into glw/catke-parameter-r…
simone-silvestri Jul 27, 2023
19164ed
Merge remote-tracking branch 'origin/main' into ss/load-balance-and-c…
simone-silvestri Jul 27, 2023
cd66ed3
see what the error is
simone-silvestri Jul 28, 2023
cd93563
allow changing halos from checkpointer
simone-silvestri Jul 28, 2023
2c7a633
test it
simone-silvestri Jul 28, 2023
5310c55
finally fixed it
simone-silvestri Jul 28, 2023
ac408b5
better naming
simone-silvestri Jul 28, 2023
746a014
bugfix
simone-silvestri Jul 30, 2023
a4aa696
bugfix
simone-silvestri Jul 30, 2023
9f8c1bb
bugfix
simone-silvestri Jul 31, 2023
11f01d8
bugfix
simone-silvestri Jul 31, 2023
2c0a170
removed useless tendency
simone-silvestri Jul 31, 2023
24c6815
small fix
simone-silvestri Jul 31, 2023
d19ab3c
dummy commit
simone-silvestri Jul 31, 2023
0cbfff9
merge
simone-silvestri Aug 4, 2023
7688452
fix active cell map
simone-silvestri Aug 4, 2023
0e81f12
comment
simone-silvestri Aug 4, 2023
7e4bf9a
bugfix
simone-silvestri Aug 6, 2023
347367e
bugfix
simone-silvestri Aug 6, 2023
2068462
removed useless tendency
simone-silvestri Aug 6, 2023
c972d07
maybe just keep it does not harm too much
simone-silvestri Aug 6, 2023
e01c38c
should have fixed it?
simone-silvestri Aug 6, 2023
45fb9d5
let's go now
simone-silvestri Aug 6, 2023
170dc90
done
simone-silvestri Aug 6, 2023
f0ac1da
bugfix
simone-silvestri Aug 6, 2023
c9a4ae6
no need for this
simone-silvestri Aug 6, 2023
bae6127
Merge remote-tracking branch 'origin/main' into ss/load-balance-and-c…
simone-silvestri Aug 8, 2023
6fc688e
convert Δt in time stepping
simone-silvestri Aug 15, 2023
234bd8e
maximum
simone-silvestri Aug 15, 2023
be4d885
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Aug 15, 2023
d6e338d
minimum substeps
simone-silvestri Aug 15, 2023
2eae774
more flexibility
simone-silvestri Aug 16, 2023
d6455c1
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Aug 16, 2023
04242b4
bugfix
simone-silvestri Aug 16, 2023
2b00958
mutlidimensional
simone-silvestri Aug 18, 2023
ea8b2ba
Merge branch 'main' into ss/load-balance-and-corners
simone-silvestri Aug 21, 2023
3202adb
fallback methods
simone-silvestri Aug 21, 2023
34eae95
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Aug 21, 2023
086b21e
test a thing
simone-silvestri Aug 22, 2023
9e1728f
change
simone-silvestri Aug 22, 2023
f6f0f3e
chnage
simone-silvestri Aug 22, 2023
7e61e0b
change
simone-silvestri Aug 22, 2023
ecb5664
change
simone-silvestri Aug 22, 2023
38bc808
update
simone-silvestri Aug 22, 2023
836d629
update
simone-silvestri Aug 22, 2023
636abdb
new offsets + return to previous KA
simone-silvestri Aug 28, 2023
dad5ad9
bugfix
simone-silvestri Aug 28, 2023
10b2e97
bugfixxed
simone-silvestri Aug 28, 2023
25316a6
remove debugging
simone-silvestri Aug 28, 2023
6d21230
going back
simone-silvestri Sep 6, 2023
1dc301f
Merge remote-tracking branch 'origin/ss/mpi-with-catke' into ss/load-…
simone-silvestri Sep 6, 2023
bf5d06b
Merge remote-tracking branch 'origin/main' into ss/load-balance-and-c…
simone-silvestri Sep 6, 2023
f8de976
more robus partitioning
simone-silvestri Sep 6, 2023
4824add
quite new
simone-silvestri Sep 6, 2023
4416f37
bugfix
simone-silvestri Sep 6, 2023
74ef9eb
updated Manifest
simone-silvestri Sep 6, 2023
20b470c
build with 1.9.3
simone-silvestri Sep 6, 2023
943458a
switch boundary_buffer to required_halo_size
simone-silvestri Sep 8, 2023
13982e3
bugfix
simone-silvestri Sep 8, 2023
a5ff1bc
Update src/Models/HydrostaticFreeSurfaceModels/single_column_model_mo…
simone-silvestri Sep 8, 2023
44cff40
Update src/Models/HydrostaticFreeSurfaceModels/update_hydrostatic_fre…
simone-silvestri Sep 8, 2023
df6967b
bugfix
simone-silvestri Sep 8, 2023
d62fa07
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Sep 8, 2023
229e4aa
biharmonic requires 2 halos
simone-silvestri Sep 8, 2023
d354418
buggfix
simone-silvestri Sep 9, 2023
30aefe5
compute_auxiliaries!
simone-silvestri Sep 10, 2023
b8e913f
bugfix
simone-silvestri Sep 10, 2023
8c4ed66
fixed it
simone-silvestri Sep 10, 2023
271aa86
little change
simone-silvestri Sep 12, 2023
1db41bb
some changes
simone-silvestri Sep 12, 2023
f2bc008
bugfix
simone-silvestri Sep 12, 2023
0911063
bugfix
simone-silvestri Sep 12, 2023
e6608a6
bugfixxed
simone-silvestri Sep 18, 2023
38f2b87
another bugfix
simone-silvestri Sep 18, 2023
4ed8333
Merge branch 'main' into ss/load-balance-and-corners
simone-silvestri Sep 18, 2023
7da9b59
compute_diffusivities!
simone-silvestri Sep 18, 2023
dafa13c
required halo size
simone-silvestri Sep 18, 2023
56892eb
all fixed
simone-silvestri Sep 18, 2023
bf927ae
shorten line
simone-silvestri Sep 19, 2023
bac7f4e
fix comment
simone-silvestri Sep 19, 2023
d48d1c9
remove abbreviation
simone-silvestri Sep 19, 2023
3679421
remove unused functions
simone-silvestri Sep 19, 2023
92739b0
better explanation of the MPI tag
simone-silvestri Sep 19, 2023
eab6dde
Update src/ImmersedBoundaries/active_cells_map.jl
simone-silvestri Sep 19, 2023
3bbcdcd
Update src/Solvers/batched_tridiagonal_solver.jl
simone-silvestri Sep 19, 2023
4259130
change name
simone-silvestri Sep 19, 2023
c118bf0
Merge branch 'ss/load-balance-and-corners' of github.com:CliMA/Oceana…
simone-silvestri Sep 19, 2023
d5e75a3
docstring
simone-silvestri Sep 19, 2023
256de76
name change on rank
simone-silvestri Sep 19, 2023
0bfeb97
interior active cells
simone-silvestri Sep 19, 2023
1b96804
calculate -> compute
simone-silvestri Sep 19, 2023
8f6fc68
fixed tests
simone-silvestri Sep 19, 2023
de64e92
do not compute momentum in prescribed velocities
simone-silvestri Sep 19, 2023
58d92ec
DistributedComputations
simone-silvestri Sep 19, 2023
cab51e5
DistributedComputations part #2
simone-silvestri Sep 19, 2023
dfbc048
bugfix
simone-silvestri Sep 19, 2023
55b9299
fixed the docs
simone-silvestri Sep 19, 2023
b51e681
Merge branch 'main' into ss/load-balance-and-corners
navidcy Sep 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
env:
JULIA_VERSION: "1.9.2"
JULIA_VERSION: "1.9.3"
JULIA_MINOR_VERSION: "1.9"
SVERDRUP_HOME: "/data5/glwagner"
TARTARUS_HOME: "/storage5/buildkite-agent"
Expand Down
50 changes: 22 additions & 28 deletions Manifest.toml
navidcy marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# This file is machine-generated - editing it directly is not advised

julia_version = "1.9.2"
julia_version = "1.9.3"
manifest_format = "2.0"
project_hash = "ea620612cb5f84093b962d4345aa7d1b1271739c"

Expand Down Expand Up @@ -91,9 +91,9 @@ version = "0.1.2"

[[deps.CUDA]]
deps = ["AbstractFFTs", "Adapt", "BFloat16s", "CEnum", "CUDA_Driver_jll", "CUDA_Runtime_Discovery", "CUDA_Runtime_jll", "ExprTools", "GPUArrays", "GPUCompiler", "KernelAbstractions", "LLVM", "LazyArtifacts", "Libdl", "LinearAlgebra", "Logging", "Preferences", "Printf", "Random", "Random123", "RandomNumbers", "Reexport", "Requires", "SparseArrays", "SpecialFunctions", "UnsafeAtomicsLLVM"]
git-tree-sha1 = "35160ef0f03b14768abfd68b830f8e3940e8e0dc"
git-tree-sha1 = "968c1365e2992824c3e7a794e30907483f8469a9"
uuid = "052768ef-5323-5732-b1bb-66c8b64840ba"
version = "4.4.0"
version = "4.4.1"

[[deps.CUDA_Driver_jll]]
deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg"]
Expand Down Expand Up @@ -246,9 +246,9 @@ version = "1.3.1"

[[deps.HDF5_jll]]
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 = "592e1c427983a465831fc73c5ae0ca5d0ac13a9e"
git-tree-sha1 = "10c72358aaaa5cd6bc7cc39b95e6eadf92f5a336"
uuid = "0234f1f7-429e-5d53-9886-15a909be8d59"
version = "1.14.1+0"
version = "1.14.2+0"

[[deps.IfElse]]
git-tree-sha1 = "debdd00ffef04665ccbb3e150747a77560e8fad1"
Expand Down Expand Up @@ -319,15 +319,15 @@ version = "0.9.8"

[[deps.LLVM]]
deps = ["CEnum", "LLVMExtra_jll", "Libdl", "Printf", "Unicode"]
git-tree-sha1 = "8695a49bfe05a2dc0feeefd06b4ca6361a018729"
git-tree-sha1 = "a9d2ce1d5007b1e8f6c5b89c5a31ff8bd146db5c"
uuid = "929cbde3-209d-540e-8aea-75f648917ca0"
version = "6.1.0"
version = "6.2.1"

[[deps.LLVMExtra_jll]]
deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl", "TOML"]
git-tree-sha1 = "c35203c1e1002747da220ffc3c0762ce7754b08c"
git-tree-sha1 = "7ca6850ae880cc99b59b88517545f91a52020afa"
uuid = "dad2f222-ce93-54a1-a47d-0025e8a3acab"
version = "0.0.23+0"
version = "0.0.25+0"

[[deps.LLVMOpenMP_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"]
Expand Down Expand Up @@ -362,10 +362,10 @@ version = "1.10.2+0"
uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb"

[[deps.Libiconv_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"]
git-tree-sha1 = "c7cb1f5d892775ba13767a87c7ada0b980ea0a71"
deps = ["Artifacts", "JLLWrappers", "Libdl"]
git-tree-sha1 = "f9557a255370125b405568f9767d6d195822a175"
uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531"
version = "1.16.1+2"
version = "1.17.0+0"

[[deps.LinearAlgebra]]
deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"]
Expand Down Expand Up @@ -398,9 +398,9 @@ version = "2023.2.0+0"

[[deps.MPI]]
deps = ["Distributed", "DocStringExtensions", "Libdl", "MPICH_jll", "MPIPreferences", "MPItrampoline_jll", "MicrosoftMPI_jll", "OpenMPI_jll", "PkgVersion", "PrecompileTools", "Requires", "Serialization", "Sockets"]
git-tree-sha1 = "32cafbe56c7f0b7160a1a6c492773af66c0b722f"
git-tree-sha1 = "df53d0e1e0dbebf2315f4cd35e13e52ad43416c2"
uuid = "da04e1cc-30fd-572f-bb4f-1f8673147195"
version = "0.20.14"
version = "0.20.15"

[deps.MPI.extensions]
AMDGPUExt = "AMDGPU"
Expand Down Expand Up @@ -544,9 +544,9 @@ version = "1.9.2"

[[deps.PkgVersion]]
deps = ["Pkg"]
git-tree-sha1 = "f6cf8e7944e50901594838951729a1861e668cb8"
git-tree-sha1 = "f9501cc0430a26bc3d156ae1b5b0c1b47af4d6da"
uuid = "eebad327-c553-4316-9ea0-9fa01ccd7688"
version = "0.3.2"
version = "0.3.3"

[[deps.PrecompileTools]]
deps = ["Preferences"]
Expand Down Expand Up @@ -643,12 +643,6 @@ version = "0.3.2"
[[deps.Serialization]]
uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b"

[[deps.SnoopPrecompile]]
deps = ["Preferences"]
git-tree-sha1 = "e760a70afdcd461cf01a575947738d359234665c"
uuid = "66db9d55-30c0-4569-8b51-7e840670fc0c"
version = "1.0.3"

[[deps.Sockets]]
uuid = "6462fe0b-24de-5631-8697-dd941f90decc"

Expand All @@ -675,10 +669,10 @@ uuid = "aedffcd0-7271-4cad-89d0-dc628f76c6d3"
version = "0.8.8"

[[deps.StaticArrayInterface]]
deps = ["ArrayInterface", "Compat", "IfElse", "LinearAlgebra", "Requires", "SnoopPrecompile", "SparseArrays", "Static", "SuiteSparse"]
git-tree-sha1 = "33040351d2403b84afce74dae2e22d3f5b18edcb"
deps = ["ArrayInterface", "Compat", "IfElse", "LinearAlgebra", "PrecompileTools", "Requires", "SparseArrays", "Static", "SuiteSparse"]
git-tree-sha1 = "03fec6800a986d191f64f5c0996b59ed526eda25"
uuid = "0d7ed370-da01-4f52-bd93-41d350b8b718"
version = "1.4.0"
version = "1.4.1"
weakdeps = ["OffsetArrays", "StaticArrays"]

[deps.StaticArrayInterface.extensions]
Expand Down Expand Up @@ -828,10 +822,10 @@ uuid = "81def892-9a0e-5fdd-b105-ffc91e053289"
version = "1.3.0"

[[deps.XML2_jll]]
deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "Zlib_jll"]
git-tree-sha1 = "93c41695bc1c08c46c5899f4fe06d6ead504bb73"
deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Zlib_jll"]
git-tree-sha1 = "04a51d15436a572301b5abbb9d099713327e9fc4"
uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a"
version = "2.10.3+0"
version = "2.10.4+0"

[[deps.Zlib_jll]]
deps = ["Libdl"]
Expand Down
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "Oceananigans"
uuid = "9e8cae18-63c1-5223-a75c-80ca9d6e9a09"
authors = ["Climate Modeling Alliance and contributors"]
version = "0.87.2"
version = "0.88.0"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are the breaking changes? This PR seems to concern only MPI which doesn't really have user facing stuff?

Copy link
Collaborator Author

@simone-silvestri simone-silvestri Sep 8, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It changes a lot of the internals of the code so I think it is good to bump the version.

There are some API changes such as:

  • active_cells_map kwarg for ImmersedBoundaryGrid
  • boundary_buffer for scalar diffusivities

and one breaking change

  • size passed to distributed grids is the local not the global size


[deps]
Adapt = "79e6a3ab-5dfb-504d-930d-738a2a938a0e"
Expand Down Expand Up @@ -38,6 +38,7 @@ StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a"
[compat]
Adapt = "3"
CUDA = "4"
KernelAbstractions = "^0.9"
Crayons = "4"
CubedSphere = "0.1, 0.2"
Distances = "0.10"
Expand All @@ -47,7 +48,6 @@ Glob = "1.3"
IncompleteLU = "0.2"
IterativeSolvers = "0.9"
JLD2 = "^0.4"
KernelAbstractions = "0.9"
simone-silvestri marked this conversation as resolved.
Show resolved Hide resolved
MPI = "0.16, 0.17, 0.18, 0.19, 0.20"
NCDatasets = "0.12.10"
OffsetArrays = "1.4"
Expand Down
14 changes: 5 additions & 9 deletions src/AbstractOperations/computed_field.jl
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

using KernelAbstractions: @kernel, @index
using Oceananigans.Grids: default_indices
using Oceananigans.Fields: FieldStatus, reduced_dimensions, validate_indices, offset_compute_index
using Oceananigans.Fields: FieldStatus, reduced_dimensions, validate_indices, offset_index
using Oceananigans.Utils: launch!

import Oceananigans.Fields: Field, compute!
Expand Down Expand Up @@ -75,17 +75,13 @@ end

function compute_computed_field!(comp)
arch = architecture(comp)
launch!(arch, comp.grid, size(comp), _compute!, comp.data, comp.operand, comp.indices)
parameters = KernelParameters(size(comp), map(offset_index, comp.indices))
launch!(arch, comp.grid, parameters, _compute!, comp.data, comp.operand)
return comp
end

"""Compute an `operand` and store in `data`."""
@kernel function _compute!(data, operand, index_ranges)
@kernel function _compute!(data, operand)
i, j, k = @index(Global, NTuple)

i′ = offset_compute_index(index_ranges[1], i)
j′ = offset_compute_index(index_ranges[2], j)
k′ = offset_compute_index(index_ranges[3], k)

@inbounds data[i′, j′, k′] = operand[i′, j′, k′]
@inbounds data[i, j, k] = operand[i, j, k]
end
2 changes: 1 addition & 1 deletion src/Advection/flat_advective_fluxes.jl
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
##### Flat Topologies
#####

using Oceananigans.Operators: XFlatGrid, YFlatGrid, ZFlatGrid
using Oceananigans.Grids: XFlatGrid, YFlatGrid, ZFlatGrid

for SchemeType in [:CenteredScheme, :UpwindScheme]
@eval begin
Expand Down
22 changes: 11 additions & 11 deletions src/Advection/reconstruction_coefficients.jl
Original file line number Diff line number Diff line change
Expand Up @@ -123,19 +123,19 @@ Examples
julia> using Oceananigans.Advection: calc_reconstruction_stencil

julia> calc_reconstruction_stencil(1, :right, :x)
:(+(FT(coeff1_right[1]) * ψ[i + 0, j, k]))
:(+(convert(FT, coeff1_right[1]) * ψ[i + 0, j, k]))

julia> calc_reconstruction_stencil(1, :left, :x)
:(+(FT(coeff1_left[1]) * ψ[i + -1, j, k]))
:(+(convert(FT, coeff1_left[1]) * ψ[i + -1, j, k]))

julia> calc_reconstruction_stencil(1, :symmetric, :x)
:(FT(coeff2_symmetric[2]) * ψ[i + -1, j, k] + FT(coeff2_symmetric[1]) * ψ[i + 0, j, k])
:(convert(FT, coeff2_symmetric[2]) * ψ[i + -1, j, k] + convert(FT, coeff2_symmetric[1]) * ψ[i + 0, j, k])

julia> calc_reconstruction_stencil(2, :symmetric, :x)
:(FT(coeff4_symmetric[4]) * ψ[i + -2, j, k] + FT(coeff4_symmetric[3]) * ψ[i + -1, j, k] + FT(coeff4_symmetric[2]) * ψ[i + 0, j, k] + FT(coeff4_symmetric[1]) * ψ[i + 1, j, k])
:(convert(FT, coeff4_symmetric[4]) * ψ[i + -2, j, k] + convert(FT, coeff4_symmetric[3]) * ψ[i + -1, j, k] + convert(FT, coeff4_symmetric[2]) * ψ[i + 0, j, k] + convert(FT, coeff4_symmetric[1]) * ψ[i + 1, j, k])

julia> calc_reconstruction_stencil(3, :left, :x)
:(FT(coeff5_left[5]) * ψ[i + -3, j, k] + FT(coeff5_left[4]) * ψ[i + -2, j, k] + FT(coeff5_left[3]) * ψ[i + -1, j, k] + FT(coeff5_left[2]) * ψ[i + 0, j, k] + FT(coeff5_left[1]) * ψ[i + 1, j, k])
:(convert(FT, coeff5_left[5]) * ψ[i + -3, j, k] + convert(FT, coeff5_left[4]) * ψ[i + -2, j, k] + convert(FT, coeff5_left[3]) * ψ[i + -1, j, k] + convert(FT, coeff5_left[2]) * ψ[i + 0, j, k] + convert(FT, coeff5_left[1]) * ψ[i + 1, j, k])
```
"""
@inline function calc_reconstruction_stencil(buffer, shift, dir, func::Bool = false)
Expand All @@ -154,16 +154,16 @@ julia> calc_reconstruction_stencil(3, :left, :x)
c = n - buffer - 1
if func
stencil_full[idx] = dir == :x ?
:(FT($coeff[$(order - idx + 1)]) * ψ(i + $c, j, k, grid, args...)) :
:(convert(FT, $coeff[$(order - idx + 1)]) * ψ(i + $c, j, k, grid, args...)) :
dir == :y ?
:(FT($coeff[$(order - idx + 1)]) * ψ(i, j + $c, k, grid, args...)) :
:(FT($coeff[$(order - idx + 1)]) * ψ(i, j, k + $c, grid, args...))
:(convert(FT, $coeff[$(order - idx + 1)]) * ψ(i, j + $c, k, grid, args...)) :
:(convert(FT, $coeff[$(order - idx + 1)]) * ψ(i, j, k + $c, grid, args...))
else
stencil_full[idx] = dir == :x ?
:(FT($coeff[$(order - idx + 1)]) * ψ[i + $c, j, k]) :
:(convert(FT, $coeff[$(order - idx + 1)]) * ψ[i + $c, j, k]) :
dir == :y ?
:(FT($coeff[$(order - idx + 1)]) * ψ[i, j + $c, k]) :
:(FT($coeff[$(order - idx + 1)]) * ψ[i, j, k + $c])
:(convert(FT, $coeff[$(order - idx + 1)]) * ψ[i, j + $c, k]) :
:(convert(FT, $coeff[$(order - idx + 1)]) * ψ[i, j, k + $c])
end
end
return Expr(:call, :+, stencil_full...)
Expand Down
Loading