Skip to content

update(Mf6Splitter): update data types for memory reduction - #2819

Open
jlarsen-usgs wants to merge 6 commits into
modflowpy:developfrom
jlarsen-usgs:develop
Open

update(Mf6Splitter): update data types for memory reduction#2819
jlarsen-usgs wants to merge 6 commits into
modflowpy:developfrom
jlarsen-usgs:develop

Conversation

@jlarsen-usgs

@jlarsen-usgs jlarsen-usgs commented Aug 21, 2026

Copy link
Copy Markdown
Contributor
  • update ._node_map and ._connection representation from dictionary to numpy arrays to reduce memory usage
  • add ._node_map_arr and ._model_map_arr to store remapping information
  • store ._connection information as iac, ja representation
  • add no_remap_key to force model splitter not to remap inactive cells from original model when active_only is used to create splitting mask

* add a `no_remap_key` that can be used to ignore remapping inactive cells
   - no remap is automatically applied when `active_only` is True in `optimize_splitting_mask`
change from neighbor dict to iac, ja representation to reduce memory
@jlarsen-usgs
jlarsen-usgs marked this pull request as draft August 21, 2026 18:59
@jlarsen-usgs

Copy link
Copy Markdown
Contributor Author

Pull request will reduce memory consumption and help preserve compact splitting from metis as noted #2813 and #2814

@codecov

codecov Bot commented Aug 21, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 81.33333% with 14 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.4%. Comparing base (556c088) to head (4f929ea).
⚠️ Report is 209 commits behind head on develop.

Files with missing lines Patch % Lines
flopy/mf6/utils/model_splitter.py 81.3% 14 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #2819      +/-   ##
===========================================
+ Coverage     55.5%    73.4%   +17.9%     
===========================================
  Files          644      659      +15     
  Lines       124135   132174    +8039     
===========================================
+ Hits         68947    97090   +28143     
+ Misses       55188    35084   -20104     
Files with missing lines Coverage Δ
flopy/mf6/utils/model_splitter.py 65.8% <81.3%> (-9.1%) ⬇️

... and 584 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jlarsen-usgs
jlarsen-usgs marked this pull request as ready for review August 21, 2026 20:44
@jlarsen-usgs

Copy link
Copy Markdown
Contributor Author

Additional work on #2816 will come as a separate PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant