-
Notifications
You must be signed in to change notification settings - Fork 355
b4b: Move the changes to initialize the task decomposition from mpi_scan to main development #3666
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
Open
ekluzek
wants to merge
100
commits into
ESCOMP:b4b-dev
Choose a base branch
from
ekluzek:decomp_mpi_scan_move_to_b4b
base: b4b-dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
100 commits
Select commit
Hold shift + click to select a range
39840b6
Start adding timers to lnd_set_decomp_and_domain_from_readmesh
ekluzek 7003e1d
Make an internal subroutine for deallocation inside of lnd_set_decomp…
ekluzek f8e934f
Add release of the ESMF objects in the lnd_set_decomp_and_domain_from…
ekluzek e042339
ESMF tells me that some of these objects are used later and can not b…
ekluzek 90f9210
Turn on removing all ESMF garbage for the things deleted, and add not…
ekluzek 4be1136
Deallocate lndfrac_loc_input
ekluzek 094288c
Add timers
ekluzek fe74146
Add more timers
ekluzek bc7bd46
Add return's after endrun calls so that the self-tests can trap expec…
ekluzek 35a101d
Change endrun calls to use new format for file and line, and remove t…
ekluzek 09e1d46
decompInit/decompMod: initialize pointers to null, add checking that …
ekluzek 9367dd5
Allow get_proc_bounds to exit early if only b3gg/endg will be needed,…
ekluzek 57ee0d3
Return up the chain in decompInit after endrun, for the testing. Do s…
ekluzek 0a7ff22
Move comment over for clarity
ekluzek a892c4c
Add a MPI_SCAN as a temporary to start testing how it works and compa…
ekluzek a03b616
Start filling other procinfo settings with mpi_scan, this passes for …
ekluzek c3b43e8
Remove the mpiscan bit about clumpcnt
ekluzek 33c15e5
Add global i,j indices for each gridcell on a processor to the proces…
ekluzek 5cad336
Add more testing, test new processor_type methods, set gindex_global …
ekluzek d799ece
Can't do this test yest, as only gridcells are set at this point and …
ekluzek d1e5e5f
Fix setting of gi and gj indices, the serial case runs to completion now
ekluzek 2dd6f06
Add ggidx global index to the processor_type, allocate, set and deall…
ekluzek ed351d4
Correct the indexing for ggidx
ekluzek 2f0837c
Remove the prints that weren't with an abort
ekluzek 444b834
Get it working for a threaded case, by adding an additional loop over…
ekluzek 93e1bfe
Add more testing for correctness, add some notes about what can be re…
ekluzek 29a334c
Get it working for the threaded case
ekluzek 7a7f2dc
Comment out the old code and just use the new MPI_SCAN way, this work…
ekluzek 623d7b8
Just do the checking over the local processor clumps and not all the …
ekluzek 9f467b0
Remove the decompInit_lnd old code commented out, and extra writes to…
ekluzek f0b05bc
Initialize the gi/gj arrays to unset
ekluzek 4eff18d
Add in an if for hist_printflds if noio from mpi_scan branch
ekluzek 8bf9e52
Bring some of the missing things from the mpi_scan branch missed in t…
ekluzek a2e74ae
Remove some of the timers we don't really need on main
ekluzek cb1a775
A few changes on mpi_scan that don't need to come to main, remove som…
ekluzek 07f9309
Add some comments and comment line breaks for new subroutines
ekluzek 08d5d13
Merge remote-tracking branch 'escomp/b4b-dev' into decomp_mpi_scan_mo…
ekluzek d2ed480
Use shr_assert rather than assert_equal
ekluzek 6ae1789
Update src/main/decompInitMod.F90
ekluzek f786948
Apply suggestions from code review
ekluzek 0574ad7
Add explicit if statements around cohort settings for FATES, add and …
ekluzek d14b998
Only deallocate lndfrac_loc_input if it's associated, and initialize …
ekluzek cf5c992
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek 7a95c40
Add add_simple_patch optional argument in #3672, and use it for the o…
ekluzek fa03c00
Turn on more options to get more fields turned on
ekluzek 2bc86a3
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek 354d965
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek 53d8323
Merge branch 'decomp_mpi_scan_move_to_b4b' of github.com:ekluzek/CTSM…
ekluzek e772ac2
Move nglob_x/nglob_y from decompInit to decompMod as module data
ekluzek b7f9bed
Merge branch 'decompMod_unittest' into decomp_mpi_scan_move_to_b4b
ekluzek a74f8be
Merge remote-tracking branch 'escomp/b4b-dev' into decomp_mpi_scan_mo…
ekluzek c9f5c72
Add call to calc_globalxy_indices in endrun, this leads to problems i…
ekluzek 201889a
Make the calc functions pure so they can be called from endrun, the c…
ekluzek cd5e29f
Add a test for calc_globalxy_indices, to get this working temporarily…
ekluzek 30b6916
Initialize nglob_x/nglob_y to -1, so can detect it not being set
ekluzek 4c8698c
Add a test for fails of calc_globalxy
ekluzek 42fc652
Make a subroutine public, so can be unit tested, change order of erro…
ekluzek 9a54398
Add some fail tests for calc_ijindices_from_full_global_index that ar…
ekluzek 84aa74c
Make pure again so will be safe to call from endrun
ekluzek df03ba6
Move msg and add_msg to top of module so doesn't have to be repeated …
ekluzek d46582a
Move settings of the decomp from the decomp test to the unittest shar…
ekluzek 43ffa94
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek 2b867f5
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek eb7a62e
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek d847989
Merge remote-tracking branch 'escomp/b4b-dev' into decomp_mpi_scan_mo…
ekluzek d8e6681
Merge remote-tracking branch 'escomp/b4b-dev' into decomp_mpi_scan_mo…
ekluzek f84d5b8
Some work on getting unit tests closer to working, make sure array su…
ekluzek 4f1ed37
Remove a part that wasn't working, just assume as shown in #3931 that…
ekluzek b75ece3
Make sure the subgrid teardown is called for every test that sets up …
ekluzek 1f46acb
Move allocate for first part of processor_type from decompInitMod to …
ekluzek a18a1db
Add decompmod_allocate_clumps to decompMod to allocate the clumps
ekluzek fd199f9
Create decompmod_allocate_gindex to allocate global_gindex and move i…
ekluzek 851bcf7
Move another set of allocation to procinfo%AllocateAfterGCellSet
ekluzek 1eed779
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek bb2958f
Move initialization of procinfo and clumps from decompInitMod to insi…
ekluzek d3a9af9
Assume one landunit per gridcell, one column per gridcell and one pat…
ekluzek f5ef978
Add decompmod_allocate_gindex to use statement so will compile
ekluzek 9162252
Calling decompmod_allocate_gindex inside of the unittestSubgrid:set_d…
ekluzek 7b6f8b1
Make the grid size uneven to catch certain types of errors, also fill…
ekluzek 59ba880
Correct setting of gi/gj so it's indivdiual index rather than whole a…
ekluzek 89619e7
Fix the error that Brian found with the help of AI, without this fix …
ekluzek 1057fac
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek f0e0a71
Add a test with the ni/nj sizes switched which catches problems with …
ekluzek 08690d3
Remove write statements no longer needed
ekluzek 8a62e99
Remove gi and gj arrays with unit tests working
ekluzek 784899c
Also remove gi/gj from decompInit
ekluzek 31a5c9d
Add note about fails
ekluzek 7869d71
Set all of the gindex arrays, and add tests for get_global_index that…
ekluzek 567c498
get_global_index does NOT work for subgrid_level_lndgrid, and decompM…
ekluzek 333b6a7
Add tests that gindex for subgrid_level_lndgrid is correct and same a…
ekluzek 9afc388
Remove ggidx and use gindex_global in it's place
ekluzek 5c6c48b
Remove AllocateAfterGCellSet as no longer needed with gi/gj and ggidx…
ekluzek 3d3fa98
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek a0e06bc
Apply a few changes recommended with a review by co-pilot of the chan…
ekluzek 5bf8cdd
Fix the user_nl_clm file as pointed out by co-pilot
ekluzek bbaf8fc
Fix a test as pointed out by co-pilot in review of the decomp_init tests
ekluzek 0b523cb
Changes needed to get to build and run for a full model case
ekluzek 5a6c34d
Add notes about the limitations of the decompMod and abortutils tests
ekluzek 3dd38b6
Update the note for MPI_SCAN to note that MPI libraries may have diff…
ekluzek 9cb558d
Merge branch 'b4b-dev' into decomp_mpi_scan_move_to_b4b
ekluzek File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks like the problem with the failing tests is that some things are being deallocated for cases where they aren't necessarily created first. So this deallocate method either needs to only be called for cases that need it, or it has to check that things were allocated first.
This won't be hard to do. But, will take a little fiddling around...