eWaterCycle / eWaterCycle/grpc4bmi

New method `update_until_and_get_variables`

Open
#152 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Python
Stars
5
Forks
5
PR merge metrics
No merged PRs in 30d

Description

Communication with grpc4bmi is quite slow. Often much slower than updating a locally running model. In many workflows this makes users not want to use containerized models (especially for 1D models).

We could speed up their workflows with a new `grpc4bmi` method `update_until_and_get_variables`, which:

- Takes a time to update until, and the names of variables the user wants to store
- The grpc server will update the model, and store the variables
- Once the target time is reached, the grpc server will transfer the collected data to the user

As there is a loop running inside the container, this will greatly improve performance.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing the existing grpc4bmi update and variable-retrieval methods on both the client and server sides. Implement the combined operation so the server updates to the requested time, collects the named variables, and transfers the collected data only after the target time is reached; verify that the workflow reduces repeated communication.

Written by the indexing model from the issue text.

Assessment

Tech stack
grpc, python
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.