Deltares / Deltares/imod-python
[Bug] - River.from_imod5_data unacceptably slow for IBRAHYM iMOD5 test
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 41
- Forks
- 12
- Avg merge
- 21h 8m
- Merged PRs (30d)
- 1
Description
Bug description
The IBRAHYM imod5 test hangs on calling River.from_imod5_data. The example has 37 timesteps for RIV and 37 layers, and need to go through quite some processing steps. There are 2 systems, which both need to be allocated to layers. Interesting is that the Drain package has 4 systems, 3 of which need to be allocated to layers and 37 layers as well. This one is slow, but not as unbearable as the River.
I have two hypotheses:
- The task graph becomes too complex for this package. This might be fixed in a similar manner as #1844. What speaks against this is that the input grids only contain one layer.
- Too many layers, caused by #1821. What speaks against this is that the data should not be even loaded into memory yet.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with River.from_imod5_data and the IBRAHYM iMOD5 test, then compare its processing with the slower-but-completing Drain package. Investigate the task-graph complexity and layer allocation hypotheses, including related issues #1844 and #1821; done means the River test no longer hangs or remains unacceptably slow.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100