Skip to content
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

Introduce python api for server scheduler #4942

Open
niloc132 opened this issue Dec 13, 2023 · 0 comments
Open

Introduce python api for server scheduler #4942

niloc132 opened this issue Dec 13, 2023 · 0 comments

Comments

@niloc132
Copy link
Member

niloc132 commented Dec 13, 2023

Bidirectional plugin authors (including deephaven.ui component authors) often have the need to submit work off-thread that will communicate with the actively connected client. We generally don't want to encourage making a new thread for each use case, so instead we should offer access to existing applicable threadpools.

In this case, the server already starts a set of threads, for "serial" and "concurrent" work. In the future we might introduce a "fast" option as well, for #3041. Typically, calls that will take an exclusive UGP lock should use the serial executor, and calls that will take the shared lock should use the concurrent executor. Calls that will not touch the update graph in any way (including no table data or operations, etc) at all might want to use the future "fast" executor.

Somewhat blocked on #4040, where ongoing refactoring will make it simpler to cleanly provide access to server threads after the python script session has been created.

@niloc132 niloc132 added this to the November 2023 milestone Dec 13, 2023
@niloc132 niloc132 self-assigned this Dec 13, 2023
niloc132 added a commit to niloc132/deephaven-core that referenced this issue Dec 13, 2023
Provides access to server thread pools from python, enabling plugin or
dhui component authors to move work off-thread as appropriate, without
introducing their own threads.

Partial deephaven#4942
niloc132 added a commit to niloc132/deephaven-core that referenced this issue Dec 14, 2023
Provides access to server thread pools from python, enabling plugin or
dhui component authors to move work off-thread as appropriate, without
introducing their own threads.

Partial deephaven#4942
niloc132 added a commit that referenced this issue Dec 15, 2023
Provides access to server thread pools from python, enabling plugin or
dhui component authors to move work off-thread as appropriate, without
introducing their own threads. Later work will make use of the existing
server Scheduler.

Partial #4942
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants