Skip to content

Batch per-location reads in from_res1d instead of one to_dataframe() per location #683

Description

@jpalm3r

Follow-up from #679.

_load_res1d_network reads each selected location separately: _simplify_colnames calls
node.to_dataframe() per node and per boundary gridpoint, and Res1DReach does the same per
populated gridpoint. Each call crosses the pythonnet/.NET boundary on its own.

mikeio1d exposes a batched form, res.read(queries), taking a list of TimeSeriesId. A test user
measured ~0.5 s for 50 sensors that way, versus a per-trial cost of 18–25 s for a full build today.

Worth checking whether routing the selected locations through one batched read is faster than the
current per-location reads, and how it interacts with the quantities filter added in #679.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions